5個(gè)有用的開源日志分析工具
監(jiān)控網(wǎng)絡(luò)活動(dòng)既重要又繁瑣,以下這些工具可以使它更容易。
監(jiān)控網(wǎng)絡(luò)活動(dòng)是一項(xiàng)繁瑣的工作,但有充分的理由這樣做。例如,它允許你查找和調(diào)查工作站和連接到網(wǎng)絡(luò)的設(shè)備及服務(wù)器上的可疑登錄,同時(shí)確定管理員濫用了什么。你還可以跟蹤軟件安裝和數(shù)據(jù)傳輸,以實(shí)時(shí)識(shí)別潛在問題,而不是在損壞發(fā)生后才進(jìn)行跟蹤。
這些日志還有助于使你的公司遵守適用于在歐盟范圍內(nèi)運(yùn)營的任何實(shí)體的通用數(shù)據(jù)保護(hù)條例(GDPR)。如果你的網(wǎng)站在歐盟可以瀏覽,那么你就有遵守的該條例的資格。
日志記錄,包括跟蹤和分析,應(yīng)該是任何監(jiān)控基礎(chǔ)設(shè)置中的一個(gè)基本過程。要從災(zāi)難中恢復(fù) SQL Server 數(shù)據(jù)庫,需要事務(wù)日志文件。此外,通過跟蹤日志文件,DevOps 團(tuán)隊(duì)和數(shù)據(jù)庫管理員(DBA)可以保持很好的數(shù)據(jù)庫性能,又或者,在網(wǎng)絡(luò)攻擊的情況下找到未經(jīng)授權(quán)活動(dòng)的證據(jù)。因此,定期監(jiān)視和分析系統(tǒng)日志非常重要。這是一種重新創(chuàng)建導(dǎo)致出現(xiàn)任何問題的事件鏈的可靠方式。
現(xiàn)在有很多開源日志跟蹤器和分析工具可供使用,這使得為活動(dòng)日志選擇合適的資源比你想象的更容易。自由和開源軟件社區(qū)提供的日志設(shè)計(jì)適用于各種站點(diǎn)和操作系統(tǒng)。以下是五個(gè)我用過的不錯(cuò)的工具,它們并沒有特別的順序。
Graylog
Graylog 于 2011 年在德國創(chuàng)立,現(xiàn)在作為開源工具或商業(yè)解決方案提供。它被設(shè)計(jì)成一個(gè)集中式日志管理系統(tǒng),接受來自不同服務(wù)器或端點(diǎn)的數(shù)據(jù)流,并允許你快速瀏覽或分析該信息。
Graylog screenshot
Graylog 在系統(tǒng)管理員中有著良好的聲譽(yù),因?yàn)樗子跀U(kuò)展。大多數(shù) Web 項(xiàng)目都是從小規(guī)模開始的,但它們可能指數(shù)級(jí)增長。Graylog 可以均衡后端服務(wù)網(wǎng)絡(luò)中的負(fù)載,每天可以處理幾 TB 的日志數(shù)據(jù)。
IT 管理員會(huì)發(fā)現(xiàn) Graylog 的前端界面易于使用,而且功能強(qiáng)大。Graylog 是圍繞儀表板的概念構(gòu)建的,它允許你選擇你認(rèn)為最有價(jià)值的指標(biāo)或數(shù)據(jù)源,并快速查看一段時(shí)間內(nèi)的趨勢。
當(dāng)發(fā)生安全或性能事件時(shí),IT 管理員希望能夠盡可能地根據(jù)癥狀追根溯源。Graylog 的搜索功能使這變得容易。它有內(nèi)置的容錯(cuò)功能,可運(yùn)行多線程搜索,因此你可以同時(shí)分析多個(gè)潛在的威脅。
Nagios
Nagios 始于 1999 年,最初是由一個(gè)開發(fā)人員開發(fā)的,現(xiàn)在已經(jīng)發(fā)展成為管理日志數(shù)據(jù)最可靠的開源工具之一。當(dāng)前版本的 Nagios 可以與運(yùn)行 Microsoft Windows、Linux 或 Unix 的服務(wù)器集成。
Nagios Core
它的主要產(chǎn)品是日志服務(wù)器,旨在簡化數(shù)據(jù)收集并使系統(tǒng)管理員更容易訪問信息。Nagios 日志服務(wù)器引擎將實(shí)時(shí)捕獲數(shù)據(jù),并將其提供給一個(gè)強(qiáng)大的搜索工具。通過內(nèi)置的設(shè)置向?qū)?,可以輕松地與新端點(diǎn)或應(yīng)用程序集成。
Nagios 最常用于需要監(jiān)控其本地網(wǎng)絡(luò)安全性的組織。它可以審核一系列與網(wǎng)絡(luò)相關(guān)的事件,并幫助自動(dòng)分發(fā)警報(bào)。如果滿足特定條件,甚至可以將 Nagios 配置為運(yùn)行預(yù)定義的腳本,從而允許你在人員介入之前解決問題。
作為網(wǎng)絡(luò)審計(jì)的一部分,Nagios 將根據(jù)日志數(shù)據(jù)來源的地理位置過濾日志數(shù)據(jù)。這意味著你可以使用地圖技術(shù)構(gòu)建全面的儀表板,以了解 Web 流量是如何流動(dòng)的。
Elastic Stack (ELK Stack)
Elastic Stack,通常稱為 ELK Stack,是需要篩選大量數(shù)據(jù)并理解其日志系統(tǒng)的組織中受歡迎的開源工具之一(這也是我個(gè)人的最愛)。
ELK Stack
它的主要產(chǎn)品由三個(gè)獨(dú)立的產(chǎn)品組成:Elasticsearch、Kibana 和 Logstash:
- 顧名思義, Elasticsearch 旨在幫助用戶使用多種查詢語言和類型在數(shù)據(jù)集之中找到匹配項(xiàng)。速度是它的優(yōu)勢。它可以擴(kuò)展成由數(shù)百個(gè)服務(wù)器節(jié)點(diǎn)組成的集群,輕松處理 PB 級(jí)的數(shù)據(jù)。
- Kibana 是一個(gè)可視化工具,與 Elasticsearch 一起工作,允許用戶分析他們的數(shù)據(jù)并構(gòu)建強(qiáng)大的報(bào)告。當(dāng)你第一次在服務(wù)器集群上安裝 Kibana 引擎時(shí),你會(huì)看到一個(gè)顯示著統(tǒng)計(jì)數(shù)據(jù)、圖表甚至是動(dòng)畫的界面。
- ELK Stack 的最后一部分是 Logstash,它作為一個(gè)純粹的服務(wù)端管道進(jìn)入 Elasticsearch 數(shù)據(jù)庫。你可以將 Logstash 與各種編程語言和 API 集成,這樣你的網(wǎng)站和移動(dòng)應(yīng)用程序中的信息就可以直接提供給強(qiáng)大的 Elastic Stalk 搜索引擎中。
ELK Stack 的一個(gè)獨(dú)特功能是,它允許你監(jiān)視構(gòu)建在 WordPress 開源網(wǎng)站上的應(yīng)用程序。與跟蹤管理日志和 PHP 日志的大多數(shù)開箱即用的安全審計(jì)日志工具相比,ELK Stack 可以篩選 Web 服務(wù)器和數(shù)據(jù)庫日志。
糟糕的日志跟蹤和數(shù)據(jù)庫管理是導(dǎo)致網(wǎng)站性能不佳的最常見原因之一。沒有定期檢查、優(yōu)化和清空數(shù)據(jù)庫日志,不僅會(huì)降低站點(diǎn)的運(yùn)行速度,還可能導(dǎo)致其完全崩潰。因此,ELK Stack 對(duì)于每個(gè) WordPress 開發(fā)人員的工具包來說都是一個(gè)優(yōu)秀的工具。
LOGalyze
LOGalyze 是一個(gè)位于匈牙利的組織,它為系統(tǒng)管理員和安全專家構(gòu)建開源工具,以幫助他們管理服務(wù)器日志,并將其轉(zhuǎn)換為有用的數(shù)據(jù)點(diǎn)。其主要產(chǎn)品可供個(gè)人或商業(yè)用戶免費(fèi)下載。
LOGalyze
LOGalyze 被設(shè)計(jì)成一個(gè)巨大的管道,其中多個(gè)服務(wù)器、應(yīng)用程序和網(wǎng)絡(luò)設(shè)備可以使用簡單對(duì)象訪問協(xié)議(SOAP)方法提供信息。它提供了一個(gè)前端界面,管理員可以登錄界面來監(jiān)控?cái)?shù)據(jù)集并開始分析數(shù)據(jù)。
在 LOGalyze 的 Web 界面中,你可以運(yùn)行動(dòng)態(tài)報(bào)告,并將其導(dǎo)出到 Excel 文件、PDF 文件或其他格式。這些報(bào)告可以基于 LOGalyze 后端管理的多維統(tǒng)計(jì)信息。它甚至可以跨服務(wù)器或應(yīng)用程序組合數(shù)據(jù)字段,借此來幫助你發(fā)現(xiàn)性能趨勢。
LOGalyze 旨在不到一個(gè)小時(shí)內(nèi)完成安裝和配置。它具有預(yù)先構(gòu)建的功能,允許它以法律所要求的格式收集審計(jì)數(shù)據(jù)。例如,LOGalyze 可以很容易地運(yùn)行不同的 HIPAA 報(bào)告,以確保你的組織遵守健康法律并保持合規(guī)性。
Fluentd
如果你所在組織的數(shù)據(jù)源位于許多不同的位置和環(huán)境中,那么你的目標(biāo)應(yīng)該是盡可能地將它們集中在一起。否則,你將難以監(jiān)控性能并防范安全威脅。
Fluentd 是一個(gè)強(qiáng)大的數(shù)據(jù)收集解決方案,它是完全開源的。它沒有提供完整的前端界面,而是作為一個(gè)收集層來幫助組織不同的管道。Fluentd 在被世界上一些最大的公司使用,但是也可以在較小的組織中實(shí)施。
Fluentd architecture
Fluentd 最大的好處是它與當(dāng)今最常用的技術(shù)工具兼容。例如,你可以使用 Fluentd 從 Web 服務(wù)器(如 Apache)、智能設(shè)備傳感器和 MongoDB 的動(dòng)態(tài)記錄中收集數(shù)據(jù)。如何處理這些數(shù)據(jù)完全取決于你。
Fluentd 基于 JSON 數(shù)據(jù)格式,它可以與開發(fā)人員創(chuàng)建的 500 多個(gè)插件一起使用。這使你可以將日志數(shù)據(jù)擴(kuò)展到其他應(yīng)用程序中,并通過最少的手工操作從中獲得更好的分析。
寫在最后
如果出于安全原因、政府合規(guī)性和衡量生產(chǎn)力的原因,你還沒有使用活動(dòng)日志,那么現(xiàn)在開始改變吧。市場上有很多插件,它們可以與多種環(huán)境或平臺(tái)一起工作,甚至可以在內(nèi)部網(wǎng)絡(luò)上使用。不要等發(fā)生了嚴(yán)重的事件,才采取一個(gè)積極主動(dòng)的方法去維護(hù)和監(jiān)督日志。