0

嗨,我想让snort 2.9.4在基于mips-linux的设备上运行,所以我交叉编译了 snort 和所有支持包。

我在配置 snort 时使用该选项--disable-static-daq ,因为我不想使用所有daq模式。我需要的只是afpacket模式。

当交叉编译正常时,我将 daq_afpacket.so、libsfbpf.so.0.0.1、libdaq.so.2.0.0、libdnet.1.0.1、libpcre.so.0.0.1、libpcap.so.1 移动到目标设备的 /usr/lib 目录。并且二进制 snort 被移动到目标设备的 /bin 目录中。

然后我像这样运行snort:

/bin/snort -vde --daq afpacket --daq-dir /usr/lib

输出显示:

在数据包转储模式下运行

    --== Initializing Snort ==--

初始化输出插件!

/usr/lib/daq_afpacket.so:dlopen:找不到文件

分段故障

如果我像这样运行 snort:

# /bin/snort -vde --daq afpacket

在数据包转储模式下运行

    == Initializing Snort =

初始化输出插件!

错误:找不到afpacket DAQ!

致命错误,退出..

你知道我在这里想念什么吗?

4

1 回答 1

0

让我自己回答:

daq_afpacket.so 依赖于 libsfbpf.so.0,这是一个指向 so libsfbpf.so.0.0.1 的符号链接。然后我必须将 libsfbpf.so.0.0.1 复制到 /usr/lib 并创建指向它的符号链接。

之后,可以像这样启动 snort: /bin/snort -vde --daq afpacket --daq-dir /usr/lib --daq-var buffer_size_mb=2 -i eth0 &

于 2012-12-21T03:31:18.397 回答