當像Linux這樣的操作系統正在運行時,有許多事件發生和在後台運行的進程,以實現系統資源的高效可靠使用。這些事件可能發生在系統軟件中,例如init或systemd進程,也可能發生在用戶應用程序中,例如Apache、MySQL、FTP等等。
為了了解系統和不同應用程序的狀態以及它們的工作方式,系統管理員必須在生產環境中每天定期審查日誌文件。
您可以想象需要審查來自多個系統區域和應用程序的日誌文件,這就是日誌系統派上用場的地方。它們幫助系統管理員監控、審查、分析,甚至從不同的日誌文件中生成報告,這些日誌文件是由系統管理員配置的。
在本文中,我们将介绍今天Linux中使用最广泛的四种开源日志管理系统,如今几乎所有发行版中的标准日志协议都是Syslog。
目录
1. ManageEngine EventLog Analyzer
ManageEngine EventLog Analyzer 是一款針對各種行業,如資訊技術、醫療、零售、金融、教育等不同規模企業設計的本地日誌管理解決方案。該解決方案提供基於代理程序和無代理程序的日誌收集、日誌解析功能、強大的日誌搜索引擎和日誌存檔選項。
通過網絡設備審計功能,它使用戶能夠實時監控其終端用戶設備、防火牆、路由器、交換機等。該解決方案以圖表和直觀的報告形式顯示分析數據。
EventLog Analyzer的事件日誌相關性、威脅情報、MITRE ATT&CK框架實施、高級威脅分析等事件檢測機制有助於發現安全威脅。
實時警報系統會警示用戶有關可疑活動,使他們能夠優先處理高風險安全威脅。通過自動化的事件響應系統,SOC可以減輕潛在威脅。
解決方案還幫助用戶遵守各種IT合規標準,如PCI DSS、ISO 27001、GLBA、SOX、HIPAA、CCPA、GDPR等。基於訂閱的服務根據監控的日誌來源數量提供。通過電話、產品視頻和在線知識庫向用戶提供支持。

2. Graylog 2
Graylog是一個領先的開源和堅固的集中日誌管理工具,廣泛用於收集和查看各種環境的日誌,包括測試和生產環境。它易於設置,強烈推薦給小型企業。

Graylog幫助您輕鬆從多個設備收集數據,包括網絡交換機、路由器和無線接入點。它與Elasticsearch分析引擎集成,並利用MongoDB來存儲數據,收集的日誌提供深入洞察,有助於故障和錯誤的排除。
使用 Graylog,您可以获得一个整洁且易用的 WebUI,配备了精彩的仪表板,帮助您无缝跟踪数据。此外,您还会获得一组巧妙的工具和功能,可帮助进行合规性审计、威胁搜索等等。您可以启用通知,以便在满足某些条件或出现问题时触发警报。
总的来说,Graylog在整理大量数据和简化搜索、分析数据方面表现相当不错。最新版本是Graylog 5.2.4,提供了诸如深色模式、与 Slack 和ElasticSearch集成等新功能。
3. Logcheck
Logcheck是另一个开源日志监控工具,作为一个 cron 任务运行。它通过数千个日志文件来检测触发的违规行为或系统事件。然后,Logcheck会向配置的电子邮件地址发送警报的详细摘要,以通知运维团队有关未经授权的入侵或系统故障等问题。

此日志系统开发了三种不同级别的日志文件过滤,包括:
- 偏执:适用于运行尽可能少服务的高安全性系统。
- 伺服器: 這是 logcheck 的默認篩選級別,其規則定義了許多不同的系統守護進程。懷疑級別下定義的規則也包含在此級別之下。
- 工作站: 適用於受保護系統,有助於過濾大部分的消息。它還包括在懷疑和伺服器級別下定義的規則。
Logcheck 還能將要報告的消息分類為三種可能的層級,包括安全事件、系統事件和系統攻擊警報。系統管理員可以根據篩選級別選擇系統事件報告的詳細級別,但這不會影響安全事件和系統攻擊警報。
Logcheck 提供以下功能:
- 預定義的報告模板。
- A mechanism for filtering logs using regular expressions.
- 即時郵件通知。
- 即時安全警報。
4. Logwatch
Logwatch 是一個開源且高度可定制的日誌收集和分析應用程序。它解析系統和應用程序日誌並生成關於應用程序運行狀況的報告。報告可以通過命令行或專用電子郵件地址交付。

您可以輕鬆地通過修改位於/etc/logwatch/conf路徑中的參數來自定義Logwatch。 它還提供了一些預先編寫的PERL腳本,以使日誌解析更加容易。
Logwatch採用分層方法,有三個主要位置定義了配置詳細信息:
- /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.10版,它支持使用systemd日誌直接查詢journalctl。如果您負擔不起專有的日誌管理工具,Logwatch將使您放心,因為所有事件都將被記錄,並在發生問題時發送通知。
5. Logstash
Logstash 是一個開源的伺服器端數據處理管道,接受來自多個來源的數據,包括本地文件或分佈式系統,如 S3。然後處理日誌並將它們傳送到平台,例如 Elasticsearch,稍後進行分析和存檔。它是一個非常強大的工具,因為它可以從多個應用程序中提取大量日誌,並立即將它們輸出到不同的數據庫或引擎中。

Logstash 結構化非結構化數據,執行地理位置查找,匿名個人數據,並且也跨多個節點進行擴展。您可以使 Logstash 監聽包括 SNMP、心跳、Syslog、Kafka、puppet、Windows 事件日誌等在內的大量數據源。
Logstash 依賴於「beats」,這是輕量級數據船運人員,用於向 Logstash 提供數據進行解析和結構化等。然後將數據發送到其他目的地,如 Google Cloud、MongoDB 和 Elasticsearch 進行索引。Logstash 是 Elastic Stack 的關鍵組件,允許用戶以任何形式匯總數據,解析數據並在交互式儀表板上進行可視化。
更重要的是,Logstash 擁有廣泛的社區支持和定期更新。
摘要
這就是目前的內容,請記住這些並不是您在Linux上可以使用的所有日誌管理系統。我們將在未來的文章中繼續審查和更新列表,希望您會發現本文有用,您也可以通過留下評論告訴我們其他重要的日誌工具或系統。
Source:
https://www.tecmint.com/best-linux-log-monitoring-and-management-tools/