本文将简单描述如何使用 zeek。
安装配置
在 这里 下载安装 zeek 的 LTS 版本。通常,zeek 会被安装在 /opt/zeek
中。
我们首先简单配置一下 zeek。打开安装目录下的 /etc/node.cfg
,将其内容改为
[zeek]
type=standalone
host=localhost
interface=ens33
其中,ens33 为网卡名称。
如果不知道网卡名称,可以使用下面的命令查看:
$ ifconfig
然后打开安装目录下的 /etc/networks.cfg
,将其内容改为 本机 IP 地址/端口
,例如
192.168.1.1/24
如果不知道本机 IP 地址,可以使用下面的命令查看:
$ ip addr
接下来将 zeek 添加到环境变量:
export PATH=$PATH:/opt/zeek/bin
source ~/.bashrc
再给予其 root 权限:
sudo setcap cap_net_raw,cap_net_admin=eip /opt/zeek/bin/zeek
sudo setcap cap_net_raw,cap_net_admin=eip /opt/zeek/bin/zeekctl
现在初始化 zeekcontrol:
$ zeekctl
[ZeekControl] > install
然后就可以使用了:
[ZeekControl] > start
停止的命令为
[ZeekControl] > stop
脚本部署
打开文件夹 /opt/zeek/share/site
,新建一个自己的脚本,例如我们将它命名为 customize.zeek
。
使用时,只需要在该文件夹中的 local.zeek
最后加一句
@load site/customize.zeek
然后重新部署即可:
zeekctl deploy
启动后,生成的 log 文件在 /opt/zeek/logs
中。其中
-
http.log
用来分析网络协议 -
conn.log
用来记录每一条会话的信息 -
notice.log
用来辨认出特定活动
脚本编写
zeek 脚本与 python 大同小异。可以参考这里来详细学习。
Comments