將 Zeek 與 ELK 棧整合
Zeek 是一個開源的網路安全監控工具。本文討論瞭如何將 Zeek 與 ELK 整合。
在本雜誌 2022 年 3 月版發表的題為“用 Zeek 輕鬆實現網路安全監控”的文章中,我們研究了 Zeek 的功能,並學習瞭如何開始使用它。現在我們將把我們的學習經驗再進一步,看看如何將其與 ELK(即 Elasticsearch、Kibana、Beats 和 Logstash)整合。
為此,我們將使用一個叫做 Filebeat 的工具,它可以監控、收集並轉發日誌到 Elasticsearch。我們將把 Filebeat 和 Zeek 配置在一起,這樣後者收集的資料將被轉發並集中到我們的 Kibana 儀表盤上。
安裝 Filebeat
讓我們首先將 Filebeat 與 Zeek 安裝在一起。使用 apt
來安裝 Filebeat,使用以下命令:
sudo apt install filebeat
接下來,我們需要配置 .yml
檔案,它位於 /etc/filebeat/
資料夾中:
sudo nano /etc/filebeat/filebeat.yml
我們只需要在這裡配置兩件事。在 Filebeat 輸入部分,將型別改為 log
,並取消對 enabled:false
的註釋,將其改為 true
。我們還需要指定儲存日誌的路徑,也就是說,我們需要指定 /opt/zeek/logs/current/*.log
。
完成這些後,設定的第一部分應該類似於圖 1 所示的內容。
第二件要修改的事情是在輸出下的 Elasticsearch 輸出部分,取消對 output.elasticsearch
和 hosts
的註釋。確保主機的 URL 和埠號與你安裝 ELK 時配置的相似。我們把它保持為 localhost
,埠號為 9200
。
在同一部分中,取消底部的使用者名稱和密碼的註釋,輸入安裝後配置 ELK 時生成的 Elasticsearch 使用者的使用者名稱和密碼。完成這些後,參考圖 2,檢查設定。
現在我們已經完成了安裝和配置,我們需要配置 Zeek,使其以 JSON 格式儲存日誌。為此,確保你的 Zeek 例項已經停止。如果沒有,執行下面的命令來停止它:
cd /opt/zeek/bin
./zeekctl stop
現在我們需要在 local.zeek
中新增一小行,它存在於 opt/zeek/share/zeek/site/
目錄中。
以 root 身份開啟該檔案,新增以下行:
@load policy/tuning/json-logs.zeek
參考圖 3,確保設定正確。
由於我們改變了 Zeek 的一些配置,我們需要重新部署它,這可以透過執行以下命令來完成:
cd /opt/zeek/bin
./zeekctl deploy
現在我們需要在 Filebeat 中啟用 Zeek 模組,以便它轉發 Zeek 的日誌。執行下面的命令:
sudo filebeat modules enable zeek
我們幾乎要好了。在最後一步,配置 zeek.yml
檔案要記錄什麼型別的資料。這可以透過修改 /etc/filebeat/modules.d/zeek.yml
檔案完成。
在這個 .yml 檔案中,我們必須提到這些指定的日誌存放在哪個目錄下。我們知道,這些日誌儲存在當前資料夾中,其中有幾個檔案,如 dns.log
、conn.log
、dhcp.log
等等。我們需要在每個部分提到每個路徑。如果而且只有在你不需要該檔案/程式的日誌時,你可以透過把啟用值改為 false
來捨棄不需要的檔案。
例如,對於 dns
,確保啟用值為 true
,並且路徑被配置:
var.paths: [ “/opt/zeek/logs/current/dns.log”, “/opt/zeek/logs/*.dns.json” ]
對其餘的檔案重複這樣做。我們對一些我們需要的檔案做了這個處理。我們新增了所有主要需要的檔案。你也可以這樣做。請參考圖 4。
現在是啟動 Filebeat 的時候了。執行以下命令:
sudo filebeat setup
sudo service filebeat start
現在一切都完成了,讓我們移動到 Kibana 儀表板,檢查我們是否透過 Filebeat 接收到來自 Zeek 的資料。
進入儀表板。你可以看到它所捕獲的資料的清晰統計分析(圖 5 和圖 6)。
現在讓我們進入發現選項卡,透過使用查詢進行過濾來檢查結果:
event.module: "zeek"
這個查詢將過濾它在一定時間內收到的所有資料,只向我們顯示名為 Zeek 的模組的資料(圖 7)。
鳴謝
作者感謝 VIT-AP 電腦科學與工程學院的 Sibi Chakkaravarthy Sethuraman、Sudhakar Ilango、Nandha Kumar R.和Anupama Namburu 的不斷指導和支援。特別感謝人工智慧和機器人技術卓越中心(AIR)。
via: https://www.opensourceforu.com/2022/06/integrating-zeek-with-elk-stack/
作者:Tridev Reddy 選題:lkxed 譯者:geekpi 校對:wxy
相關文章
- SpringBoot 整合 elkSpring Boot
- 《Learning ELK Stack》1 ELK技術棧介紹
- Spring Boot 整合 elkSpring Boot
- ELK技術棧ElasticSearch,Logstash,KibanaElasticsearch
- 【Elastic-2】SpringBoot整合ELK、SpringBoot寫ESASTSpring Boot
- Java棧與棧上分配Java
- Spring Boot 3中將JWT與Spring Security 6整合Spring BootJWT
- Rainbond通過外掛整合ELK/EFK,實現日誌收集AI
- Docker ELK+Filebeat安裝與配置Docker
- 將zookeeper curator與springboot專案進行整合(重點)Spring Boot
- 將Alfred與BetterZip整合,提高你的Mac工作效率AlfredMac
- ELK
- 順序棧與鏈式棧的圖解與實現圖解
- webpack工程化整合React技術棧(一)WebReact
- ELK 系列三、ELK6.5.3 +xpack破解
- 【Spring Cloud & Alibaba+Vue微信小程式開源全棧專案實戰】:SpringBoot整合ELK實現分散式登入日誌收集和統計CloudVue微信小程式全棧Spring Boot分散式
- 極簡教程!教你快速將K3s與Cloud Controller整合CloudController
- 全棧化與效率全棧
- java 棧與佇列Java佇列
- ELK初探
- elk 搭建
- ELK搭建
- ELK部署
- 解構現代資料棧之資料整合
- 開源元件ELK日誌系統配置與管理元件
- 寶付揭秘elk大資料與支付的秘密大資料
- Kafka與ELK實現一個日誌系統Kafka
- 棧的原理與應用
- The Stack and the Heap棧與堆__RustRust
- 棧與佇列簡介佇列
- 6.13-棧與佇列佇列
- ELK外掛
- ELK日誌
- 企業級 SpringBoot 教程 (二十五)sprinboot整合elk,搭建實時日誌平臺Spring Boot
- Spring與ActiveMQ整合SpringMQ
- spring與redis整合SpringRedis
- Storm與kafka整合ORMKafka
- Mybatis與Spring整合MyBatisSpring