使用 Elasticsearch SIEM 设置 NetFlow 监控
介绍
在现代数据中心中,您运营业务所需的许多服务都是虚拟化的,而利用或跨越物理基础设施上的端口并不总是一种选择。事实上,在云环境中,这根本不是一种选择。但是,NetFlow 1 到 IPFIX(v10) 是位于数据中心、vSphere 或云环境中的虚拟和非虚拟交换机的会话数据的标准格式。利用 Netflow 作为安全数据源,您可以有机会对公司的运营产生最小的影响,同时获得对原本模糊的虚拟网络层的可见性。
技术
本指南使用 Filebeats 7.4 版本;当然,您应该使用当前运行的 Elastic SIEM 版本。并非所有仪表板和字段都向后兼容,混合使用 Filebeat 版本会导致用于可视化的索引出现问题。
产品 | 版本 | 关联 |
---|---|---|
Filebeat | 7.4 | https://www.Elastic.co/guide/en/beats/Filebeat/7.4/index.html |
验证 Elastic SIEM 配置
如果您按照Elastic SIEM 指南中的“设置 Elasticsearch”以及随后的 Kibana 安装和配置进行操作,那么您的环境中就会有特定的 IP 地址暴露出来,等待接收信息。在开始之前,请确保收集并记录该信息以供将来使用。对于本指南,Elasticsearch 节点的 IP:Port 端点为 192.168.218.139:9200,Kibana 的 IP:Port 端点为 192.168.218.139:5601。
Filebeat 用于 Netflow 收集
Filebeat 是 beat 系列中最通用的产品之一,拥有大量支持将数据传送至 Elastic 堆栈的模块。
Filebeat 充当 NetFlow 日志的收集器而非发送器,因此您可以将其设置为从各种来源接收 NetFlow 日志。这样一来,您可以在任何平台上安装 Filebeat,只要将其配置为将其收集和解析的数据发送到适当的 Kibana 和 Elastic 节点即可。
下载并安装 Filebeat
user]$ curl -L -O https://artifacts.Elastic.co/downloads/beats/Filebeat/Filebeat-7.4.0-x86_64.rpm
[user]$ sudo rpm -vi Filebeat-7.4.0-x86_64.rpm
Filebeat 安装在/etc/filbeat文件夹中,与其他 Elasticsearch 产品一样,需要进行一些配置和文件修改才能运行。
配置 Filebeat
编辑配置文件以使用nano指向之前配置的 Elasticsearch 和 Kibana 实例。
user]$ sudo nano /etc/Filebeat/filbeat.yml
在 Kibana 部分中,找到主机变量。
将其更改为为 Kibana 服务配置的公开外部 IP 地址。如果你将 Filebeats 与 Kibana 节点安装在同一个设备上,它不会监听 localhost,而是监听配置为0.0.0.0的外部 IP 。
然后在输出部分找到 Elasticsearch 并更改hosts变量。
将其设置为为 Elasticsearch 服务配置的外部 IP 地址。类似地,如果 Elastic 节点与 Filebeat 安装在同一设备接口上,则将其配置为0.0.0.0
退出nano ,使用ctrl+x保存配置,按y保存更改,然后输入以写入现有文件名“Filebeat.yml”。
配置 Netflow 模块
现在是时候启用和配置 Netflow 模块并运行 Filebeat 设置以连接到 Elasticsearch 堆栈并上传索引模式和仪表板。
注意:此输入支持 NetFlow 版本 1、5、6、7、8 和 9,以及 IPFIX。对于 NetFlow 版本 9 之前的版本,字段会自动映射到 NetFlow v9。
首先,启用 NetFlow 模块。
user]$ sudo Filebeat modules enable netflow
在/etc/Filebeat安装位置的modules.d目录中找到netflow.yml配置。请注意,它是唯一没有附加.disabled指示符的文件。
使用nano编辑此配置文件。
user]$ sudo nano /etc/Filebeat/modules.d/netflow.yml
为了确保 Filebeat 服务正在监听外部可用端口,请将localhost更改为0.0.0.0并保留默认的2055端口。
退出nano ,使用ctrl+x保存配置,按y保存更改,然后输入以写入现有文件名“netflow.yml”。
其余选项可以在[这里]找到https://www.Elastic.co/guide/en/beats/Filebeat/master/Filebeat-input-netflow.html。
测试配置文件。
user]$ sudo Filebeat test config
如果您的配置检查通过,请运行 Filebeat 初始设置来加载仪表板、模板、索引并进一步验证配置设置。
注意:如果您运行的是 Filebeat 7.4 和较低版本的 Elasticsearch,则仪表板并不完全兼容,尤其是 Filebeat-aws-s3access-overview.json 仪表板,它会抛出错误。请升级 Elastic SIEM 或导航到/usr/share/Filebeat/Kibana/7/dashboard目录并将该文件移动到其他位置。然后重新运行 Filebeat 设置。
user]$ sudo Filebeat setup -e
配置防火墙
要允许来自 NetFlow 源的 UDP 流量进入运行 Filebeats 的设备,您必须通过运行以下命令为该端口和协议创建防火墙规则。
user]$ firewall-cmd --permanent --add-port 2055/udp
[user]$ firewall-cmd --reload
[user]$ firewall-cmd --list-all
运行文件节拍
然后使用-e标志运行 Filebeats ,将活动输出到控制台。再次确保一切正常。
user]$ Filebeat -e
Filebeat 现在位于 2055 UDP 端口上,并监听 NetFlow 源以向其发送数据。
如果您确信一切正常,则可以运行 Filebeats 服务,并且配置仍然适用。
[用户]$ sudo systemctl start Filebeat -e ``
配置 Netflow 源
现在您需要配置 Netflow 源。许多产品都有 NetFlow 输出,您可以将其配置为指向 Filebeat NetFlow 收集器。在本指南中,您将逐步了解如何在 vSphere vCenter 上设置虚拟分布式交换机,并在不影响业务资源的情况下提供虚拟流量管理的窗口。
其他潜在来源包括思科设备(毕竟它是思科专有标准)、瞻博网络设备、VMware 虚拟网络、AWS VPC 等等!
首先,登录 vCenter 并导航到网络部分。选择要配置的虚拟分布式交换机,然后选择 Netflow 部分,然后单击编辑配置。
免责声明:本内容来源于第三方作者授权、网友推荐或互联网整理,旨在为广大用户提供学习与参考之用。所有文本和图片版权归原创网站或作者本人所有,其观点并不代表本站立场。如有任何版权侵犯或转载不当之情况,请与我们取得联系,我们将尽快进行相关处理与修改。感谢您的理解与支持!
请先 登录后发表评论 ~