Zeek 的安装与使用
Zeek
依赖安装
Zeek 需要下列的依赖才能进行运行:
- Libpcap (http://www.tcpdump.org)
- OpenSSL libraries (http://www.openssl.org)
- BIND8 library
- Libz
- Bash (for ZeekControl)
- Python 2.6 or greater (for ZeekControl)
如果想要从源码编译 zeek
,下面这些附加的依赖也需要安装:
- CMake 3.0 or greater (http://www.cmake.org)
- Make
- C/C++ compiler with C++17 support (GCC 7+ or Clang 4+)
- SWIG (http://www.swig.org)
- Bison 2.5 or greater (https://www.gnu.org/software/bison/)
- Flex (lexical analyzer generator) (https://github.com/westes/flex)
- Libpcap headers (http://www.tcpdump.org)
- OpenSSL headers (http://www.openssl.org)
- zlib headers (https://zlib.net/)
- Python (https://www.python.org/)
可以通过以下的命令来安装这些依赖:
-
基于 RPM/RedHat 的 Linux 发行版:
1
sudo yum install cmake make gcc gcc-c++ flex bison libpcap-devel openssl-devel python-devel swig zlib-devel
在 RHEL/CentOS 6/7, 可以通过
devtoolset
来安装最新的gcc
版本。1
2sudo yum install cmake3 devtoolset-7
scl enable devtoolset-7 bash -
基于 DEB/Debian 的 Linux 发行版:
1
sudo apt-get install cmake make gcc g++ flex bison libpcap-dev libssl-dev python-dev swig zlib1g-dev
如果你的系统中安装的是
Python 2.7
, 你还需要安装python-ipaddress
。
安装 Zeek
从源码安装
1 | git clone --recursive https://github.com/zeek/zeek |
检查 zeek 是否正确使用了 PF_RING:
1 | ldd /opt/zeek/bin/zeek | grep pcap |
从二进制文件安装
从这个下载页面可以下载各个版本的 zeek
程序.
使用 Docker 安装
请查看这个 Github 仓库
启动 zeek
直接启动
假设配置文件为 hello.zeek
:
捕获网卡p1p2
的流量:
1 | /opt/zeek/bin/zeek hello.zeek -C -i p1p2 |
从test.pcap
输入流量:
1 | /opt/zeek/bin/zeek hello.zeek -C -r test.pcap |
使用 zeekctl
修改以下文件:
$PREFIX/etc/node.cfg
, 修改单机或集群设置$PREFIX/etc/networks.cfg
, 修改本地网络的定义$PREFIX/etc/zeekctl.cfg
, 修改部分配置
主要的改动在 $PREFIX/etc/node.cfg
:
- 单机启动
1
2
3
4[zeek]
type=standalone
host=localhost
interface=p1p2 - 集群配置(流量分配有问题, 暂时不用)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20[logger]
type=logger
host=localhost
[manager]
type=manager
host=localhost
[proxy-1]
type=proxy
host=localhost
[worker-1]
type=worker
host=localhost
interface=p1p2
lb_method=pf_ring
lb_procs=4
pin_cpus=4,5,6,7
env_vars=PCAP_PF_RING_CLUSTER_ID=99
之后启动 ZeekControl :
1 | /opt/zeek/bin/zeekctl |
使用 deploy
部署 zeek:
1 | [ZeekControl] > deploy |
Zeek 的安装与使用