| 会员登录 立即注册

打印 上一主题 下一主题

将 Zeek 与 ELK 栈集成

[复制链接]
跳转到指定楼层
楼主
3AAA 发表于 2022-6-30 08:01:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
楼主
3AAA
2022-6-30 08:01:25 4492 3 看楼主

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 setupsudo 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

本文由 LCTT原创编译,Linux中国荣誉推出
回复

使用道具 举报

沙发
虎骨汤 发表于 2022-6-30 08:02:06 | 只看该作者
沙发
虎骨汤
2022-6-30 08:02:06 看楼主
转发了
回复 支持 反对

使用道具 举报

板凳
tankyaoyao 发表于 2022-6-30 08:02:29 | 只看该作者
板凳
tankyaoyao
2022-6-30 08:02:29 看楼主
转发了
回复 支持 反对

使用道具 举报

地板
博爱谠 发表于 2022-6-30 08:04:07 | 只看该作者
地板
博爱谠
2022-6-30 08:04:07 看楼主
转发了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 返回列表

3AAA 当前离线
白银会员

查看:4492 | 回复:3

关于我们  |   侵权投诉受理  |   联系我们  |   Archiver  |  
免责声明:邳州信息网所有言论只代表发表者个人观点,与本站无关
Copyright © 2009-2025 pzxxw.com 版权所有:邳州金银杏文化传媒有限公司  

苏公网安备 32038202000401号

快速回复 返回顶部 返回列表