【实践】开源IDS网络流量分析与监控系统Zeek对接GrayLog

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 【实践】开源IDS网络流量分析与监控系统Zeek对接GrayLog

一、 开源IDS网络流量分析与监控系统Zeek简单介绍

The Zeek Network Security Monitor:A powerful framework for network traffic analysis and security monitoring.

Zeek网络安全监控:是一款强大的网络流量分析和安全监控的框架

  • 1、深入分析:Zeek附带了许多协议的分析器,可实现在网络应用层的高级语义分析。
  • 2、适应性强且灵活:Zeek的域特定脚本语言可实现特定于站点的监视策略,也意味着不限于任何特定检测方法。
  • 3、高效性:Zeek以高性能网络为目标,并在很多各种大型站点上应用和运行。
  • 4、高级状态性:Zeek保留有关其监控的网络应用层可扩展状态,并提供网络活动的高级存档功能。

官方文档

https://github.com/zeek/zeek
https://docs.zeek.org/

参考链接

https://linux.cn/article-14770-1.html
http://www.senlt.cn/article/171944181.html
https://blog.csdn.net/u013613428/article/details/110728269

在阅读过《将 Zeek 与 ELK 栈集成》的这篇文章后 https://linux.cn/article-14770-1.html

(图片点击放大查看)

决定尝试是否可以将zeek的网络流量监控日志吐到GrayLog,并在GrayLog上进行呈现

具体实现思路,以及要解决的问题汇总

  • 1、zeek的部署(能否rpm包的方式部署,编译部署太耗费时间)
  • 2、流量镜像问题:zeek服务器的网卡如何配置混杂模式,交换机流量镜像如何配置
  • 3、zeek的流量分析日志读取问题:zeek的日志转成json格式日志,使用graylog-sidecar+filebeat方式读取,并json提取器获取字段信息
  • 4、GrayLog上查询,Dashboard配置

具体实践过程如下

二、下载zeek的CentOS7的rpm包并部署zeek

https://zeek.org/get-zeek/

由于网速问题,我这边手动提前下载好zeek相关的rpm依赖包

(图片点击放大查看)

(图片点击放大查看)

(图片点击放大查看)

(图片点击放大查看)

1、安装zeek

yum localinstall *.rpm

2、将/opt/zeek/bin目录加到PATH环境变量中

echo "PATH=$PATH:/opt/zeek/bin" >> /etc/profile
source /etc/profile
echo $PATH

3、将网卡设置成混杂模式

ifconfig ens33 promisc

交换机配置镜像流量的操作这里就不做演示,请参考这个链接中的文章自行探索,根据自身实际网络环境自行解决

https://blog.csdn.net/u013613428/article/details/110728269

(图片点击放大查看)

(图片点击放大查看)

(图片点击放大查看)

4、vim node.cfg

cd /opt/zeek/etc
vim node.cfg
修改interface为当前实际网卡

(图片点击放大查看)

5、vim local.zeek

cd /opt/zeek/share/zeek/site/
vim local.zeek 
如下位置添加以下行:
@load policy/tuning/json-logs.zeek

(图片点击放大查看)

6、启动zeek

zeekctl 
[ZeekControl] > deploy

(图片点击放大查看)

7、查看zeek的流量分析日志

cd /opt/zeek/logs/
cd current/
ll

目前均为json格式日志

(图片点击放大查看)

三、部署graylog-sidecar+filebeat方式读取zeek的日志

1、下载并安装graylog-sidecar和filebeat的rpm包

https://github.com/Graylog2/collector-sidecar/releases
https://mirrors.cloud.tencent.com/elasticstack/7.x/yum/7.10.2/filebeat-7.10.2-x86_64.rpm
rpm -ivh filebeat-7.10.2-x86_64.rpm 
rpm -ivh graylog-sidecar-1.3.0-1.x86_64.rpm

(图片点击放大查看)

(图片点击放大查看)

2、创建sidecar的token,及sidecar端的配置修改

vim /etc/graylog/sidecar/sidecar.yml
并修改如下5处的配置
server_url: "http://192.168.31.170:9000/api/"
server_api_token: "hkoa0tv9gl9u09drhtckjbdv90v98v5mor5jropo0p0741oib3g"
node_name: "zeek"
update_interval: 10
send_status: true

(图片点击放大查看)

(图片点击放大查看)

3、graylog-sidecar启动,并下发配置

graylog-sidecar -service install
graylog-sidecar -service start

(图片点击放大查看)

(图片点击放大查看)

(图片点击放大查看)

4、Graylog上面配置Beat类型的Input

防火墙开放5044端口

firewall-cmd --permanent --zone=public --add-port=5044/tcp
firewall-cmd --reload

5、确认是否收到日志

(图片点击放大查看)

四、Graylog上配置json格式字段提取并配置大屏

(图片点击放大查看)

(图片点击放大查看)

(图片点击放大查看)

(图片点击放大查看)

(图片点击放大查看)

(图片点击放大查看)

五、总结

1、本文中所用到的rpm安装包已全部打包,下载链接如下

链接:https://share.weiyun.com/knIqb1EA 密码:bk2un9

2、扩展

zeek流量日志如果可以的话,可以与微步API接口进行关联查询,这样可以实现异常DNS等其他流量检测与告警

参考之前的文章

GrayLog使用HTTP JSONPath方式调用微步在线云API识别威胁IP

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
1月前
|
人工智能 边缘计算 物联网
蜂窝网络未来发展趋势的分析
蜂窝网络未来发展趋势的分析
67 2
|
14天前
|
机器学习/深度学习 人工智能 算法
深入解析图神经网络:Graph Transformer的算法基础与工程实践
Graph Transformer是一种结合了Transformer自注意力机制与图神经网络(GNNs)特点的神经网络模型,专为处理图结构数据而设计。它通过改进的数据表示方法、自注意力机制、拉普拉斯位置编码、消息传递与聚合机制等核心技术,实现了对图中节点间关系信息的高效处理及长程依赖关系的捕捉,显著提升了图相关任务的性能。本文详细解析了Graph Transformer的技术原理、实现细节及应用场景,并通过图书推荐系统的实例,展示了其在实际问题解决中的强大能力。
97 30
|
24天前
|
机器学习/深度学习 人工智能 自然语言处理
深度学习中的卷积神经网络(CNN): 从理论到实践
本文将深入浅出地介绍卷积神经网络(CNN)的工作原理,并带领读者通过一个简单的图像分类项目,实现从理论到代码的转变。我们将探索CNN如何识别和处理图像数据,并通过实例展示如何训练一个有效的CNN模型。无论你是深度学习领域的新手还是希望扩展你的技术栈,这篇文章都将为你提供宝贵的知识和技能。
76 7
|
24天前
|
机器学习/深度学习
NeurIPS 2024:标签噪声下图神经网络有了首个综合基准库,还开源
NoisyGL是首个针对标签噪声下图神经网络(GLN)的综合基准库,由浙江大学和阿里巴巴集团的研究人员开发。该基准库旨在解决现有GLN研究中因数据集选择、划分及预处理技术差异导致的缺乏统一标准问题,提供了一个公平、用户友好的平台,支持多维分析,有助于深入理解GLN方法在处理标签噪声时的表现。通过17种代表性方法在8个常用数据集上的广泛实验,NoisyGL揭示了多个关键发现,推动了GLN领域的进步。尽管如此,NoisyGL目前主要适用于同质图,对异质图的支持有限。
38 7
|
22天前
|
数据采集 XML 存储
构建高效的Python网络爬虫:从入门到实践
本文旨在通过深入浅出的方式,引导读者从零开始构建一个高效的Python网络爬虫。我们将探索爬虫的基本原理、核心组件以及如何利用Python的强大库进行数据抓取和处理。文章不仅提供理论指导,还结合实战案例,让读者能够快速掌握爬虫技术,并应用于实际项目中。无论你是编程新手还是有一定基础的开发者,都能在这篇文章中找到有价值的内容。
|
1天前
|
安全 网络协议 网络安全
网络不稳定导致HTTP代理频繁掉线的分析
随着数字化时代的加速发展,网络安全、隐私保护及内容访问自由成为用户核心需求。HTTP代理服务器因其独特技术优势受到青睐,但其掉线问题频发。本文分析了HTTP代理服务器不稳定导致掉线的主要原因,包括网络问题、服务器质量、用户配置错误及IP资源问题等方面。
11 0
|
24天前
|
云安全 监控 安全
云计算环境下的网络安全策略与实践
在数字化时代,云计算已成为企业和个人存储、处理数据的重要方式。然而,随着云服务的普及,网络安全问题也日益凸显。本文将探讨如何在云计算环境中实施有效的网络安全措施,包括加密技术、访问控制、安全监控和应急响应计划等方面。我们将通过具体案例分析,展示如何在实际场景中应用这些策略,以保护云中的数据不受威胁。
|
26天前
|
安全 网络协议 网络安全
【Azure 环境】从网络包中分析出TLS加密套件信息
An TLS 1.2 connection request was received from a remote client application, but non of the cipher suites supported by the client application are supported by the server. The connection request has failed. 从远程客户端应用程序收到 TLS 1.2 连接请求,但服务器不支持客户端应用程序支持的任何密码套件。连接请求失败。
|
1月前
|
安全 Linux 网络安全
nmap 是一款强大的开源网络扫描工具,能检测目标的开放端口、服务类型和操作系统等信息
nmap 是一款强大的开源网络扫描工具,能检测目标的开放端口、服务类型和操作系统等信息。本文分三部分介绍 nmap:基本原理、使用方法及技巧、实际应用及案例分析。通过学习 nmap,您可以更好地了解网络拓扑和安全状况,提升网络安全管理和渗透测试能力。
121 5