5个用于Linux的开源日志监控和管理工具

当Linux等操作系统运行时,会发生许多事件和在后台运行的进程,以实现系统资源的高效和可靠使用。这些事件可能发生在系统软件中,例如initsystemd进程或用户应用程序,如ApacheMySQLFTP等。

为了了解系统和不同应用程序的状态以及它们的工作方式,系统管理员必须每天在生产环境中不断查看日志文件。

您可以想象必须查看来自多个系统区域和应用程序的日志文件,这就是日志系统派上用场的地方。它们有助于监控、审查、分析,甚至根据系统管理员配置的不同日志文件生成报告。

在本文中,我们将了解当今 Linux 中最常用的四大开源日志管理系统,当今大多数(如果不是全部)发行版中的标准日志记录协议是Syslog

1.ManageEngine事件日志分析器

ManageEngine EventLog Analyzer是一种本地日志管理解决方案,专为信息技术、健康、零售、金融、教育等各个行业的各种规模的企业而设计。该解决方案为用户提供基于代理和无代理的日志收集、日志解析功能、强大的日志搜索引擎和日志归档选项。

借助网络设备审计功能,它使用户能够实时监控其最终用户设备、防火墙、路由器、交换机等。该解决方案以图表和直观报告的形式显示分析数据。

EventLog Analyzer 的事件检测机制,如事件日志关联、威胁情报、MITRE ATT&CK 框架实施、高级威胁分析等,有助于在安全威胁发生时第一时间发现它们。

实时警报系统会就可疑活动向用户发出警报,以便他们可以优先处理高风险安全威胁。借助自动化事件响应系统,SOC 可以减轻潜在威胁。

该解决方案还帮助用户遵守各种 IT 合规性标准,例如 PCI DSS、ISO 27001、GLBA、SOX、HIPAA、CCPA、GDPR 等。根据要监视的日志源的数量提供基于订阅的服务。通过电话、产品视频和在线知识库向用户提供支持。

ManageEngine 事件日志分析器
ManageEngine 事件日志分析器

2. Graylog 2

Graylog是领先的开源和强大的集中式日志管理工具,广泛用于收集和审查各种环境(包括测试和生产环境)中的日志。它易于设置,强烈建议小型企业使用。

Graylog - Linux 领先的日志管理
Graylog – Linux 领先的日志管理

Graylog可帮助您轻松地从多个设备(包括网络交换机、路由器和无线接入点)收集数据。它与Elasticsearch分析引擎集成,并利用MongoDB存储数据,收集的日志提供深入的洞察力,有助于排除系统故障和错误。

使用Graylog,您将获得一个简洁而令人昏昏欲睡的 WebUI,其中包含可帮助您无缝跟踪数据的炫酷仪表板。此外,您还可以获得一组有助于合规性审计、威胁搜索等的漂亮工具和功能。您可以启用通知,以便在满足特定条件或出现问题时触发警报。

总的来说,Graylog在整理大量数据并简化搜索和分析数据方面做得很好。最新版本是Graylog 4.0,提供了新功能,例如暗模式、与 slack 和ElasticSearch 7 的集成等等。

3.Logcheck

Logcheck是另一种作为 cron 作业运行的开源日志监控工具。它筛选数千个日志文件以检测触发的违规或系统事件。Logcheck 然后将警报的详细摘要发送到配置的电子邮件地址,以提醒操作团队注意未经授权的违规或系统故障等问题。

Logcheck 扫描系统日志
Logcheck 扫描系统日志

该日志系统开发了三种不同级别的日志文件过滤,包括:

  • 偏执狂:适用于运行尽可能少的服务的高安全性系统。
  • 服务器:这是 logcheck 的默认过滤级别,它的规则是为许多不同的系统守护进程定义的。偏执级别下定义的规则也包含在该级别下。
  • 工作站:它用于受保护的系统,有助于过滤大部分消息。它还包括在偏执狂和服务器级别下定义的规则。

Logcheck 还能够将要报告的消息分类为三个可能的层,包括安全事件、系统事件和系统攻击警报。系统管理员可以根据过滤级别选择报告系统事件的详细级别,但这不会影响安全事件和系统攻击警报。

Logcheck 提供以下功能:

  • 预定义的报告模板。
  • 一种使用正则表达式过滤日志的机制。
  • 即时电子邮件通知。
  • 即时安全警报。

4.Logwatch

Logwatch是一个开源且高度可定制的日志收集和分析应用程序。它解析系统和应用程序日志,并生成有关应用程序运行情况的报告。报告通过命令行或专用电子邮件地址发送。

Logwatch Linux 日志分析器
Logwatch Linux 日志分析器

您可以通过修改/etc/logwatch/conf路径中的参数轻松地根据您的喜好自定义 Logwatch 。它还以预先编写的 PERL 脚本的方式提供了一些额外的东西,使日志解析更容易。

Logwatch采用分层方法,配置详细信息定义在 3 个主要位置:

  • /usr/share/logwatch/default.conf/*
  • /etc/logwatch/conf/dist.conf/*
  • /etc/logwatch/conf/*

所有默认设置都在/usr/share/logwatch/default.conf/logwatch.conf文件中定义。推荐的做法是保持此文件不变,而是通过复制原始配置文件然后定义您的自定义设置,在/etc/logwatch/conf/路径中创建您自己的配置文件。

Logwatch的最新版本是 7.5.5 版本,它支持直接使用journalctl查询systemd日志。如果您买不起专有的日志管理工具,Logwatch会让您高枕无忧,因为它知道所有事件都会被记录下来,并在出现问题时发送通知。

5.Logstash

Logstash是一种开源服务器端数据处理管道,它接受来自多种来源的数据,包括本地文件或S3等分布式系统。然后,它会处理日志并将它们传送到Elasticsearch等平台,稍后在这些平台上进行分析和存档。这是一个非常强大的工具,因为它可以从多个应用程序中提取大量日志,然后将它们同时输出到不同的数据库或引擎。

Logstash:收集、解析、转换日志
Logstash:收集、解析和转换日志

Logstash构建非结构化数据并执行地理位置查找、匿名化个人数据以及跨多个节点进行扩展。有大量的数据源列表,您可以让 Logstash 监听管道,包括 SNMP、心跳、Syslog、Kafka、puppet、windows 事件日志等。

Logstash 依赖于“ beats ”,它是轻量级数据传送器,将数据提供给 Logstash 进行解析和结构化等。然后数据被发送到其他目的地,例如 Google Cloud、MongoDB 和 Elasticsearch 以进行索引。Logstash 是 Elastic Stack 的一个关键组件,它允许用户以任何形式整理数据、解析数据并在交互式仪表板上可视化。

更重要的是,Logstash享有广泛的社区支持和定期更新。

概括

现在就这些,请记住,这些并不是您可以在 Linux 上使用的所有可用日志管理系统。我们将在以后的文章中继续审查和更新该列表,希望您觉得这篇文章有用,并且您可以通过发表评论让我们了解其他重要的日志记录工具或系统。

类似文章