suricata在Ubuntu下的源码安装编译与简单的ips模式测试

1.相关依赖包的编译安装

基本编译工具:

sudo apt-get install make gcc pkg-config

sudo apt-get install libpcre3 libpcre3-dbg libpcre3-dev build-essential libpcap-dev   \

                libnet1-dev libyaml-0-2 libyaml-dev pkg-config zlib1g zlib1g-dev \

                libcap-ng-dev libcap-ng0 make libmagic-dev libjansson-dev        \

                libnss3-dev libgeoip-dev liblua5.1-dev libhiredis-dev libevent-dev \

                python-yaml rustc cargo


配置ips(nfq)需要的工具:

sudo apt-get install libnetfilter-queue-dev libnetfilter-queue1  \

                libnetfilter-log-dev libnetfilter-log1      \

                libnfnetlink-dev libnfnetlink0


更新:sudo apt-get update  sudo apt-get upgrade


##如果安装不了可以一个个单独安装,或者更换apt外部源


2.suricata安装编译(稳定版)

(1)从官网下载

 wget http://www.openinfosecfoundation.org/download/suricata-4.1.4.tar.gz

 tar -xzvf suricata-4.1.4.tar.gz

 cd suricata-4.1.4.tar.gz

 ./configure --enable-nfqueue --prefix=/usr --sysconfdir=/etc --localstatedir=/var

 make

 sudo make install-rules

 sudo make install


相关解释:

#--enable-nfqueue :对于ips模式需要使能nfq

#--prefix=/usr :将Suricata二进制文件安装到/ usr / bin /中

#--sysconfdir=/etc :将Suricata配置文件安装到/ etc / suricata /中

#--localstatedir=/var :设置Suricata用于登录/ var / log / suricata /

#make install-rules :安装suricata提供的规则文件到/etc/suricata/rules目录下


(2)从ubuntu软件源安装(版本可能会老一点,自动编译)

sudo add-apt-repository ppa:oisf/suricata-stable

sudo apt-get update

sudo apt-get install suricata


3.修改配置文件

cd /etc/suricata

sudo chmod 777 suricata.yaml (修改配置文件的权限)

vim suricata.yaml


#第12-46行:全局变量设置

#第55行:默认日志记录路径,修改为“/etc/suricata/log”,同时在/etc/suricata目录下新建log文件夹

#第72-615行:日志记录输出方式配置,不需要的输出方式可以注释(fast是非二进制记录,可以保留)

#第1636-1662行:nfq模式配置,将1636-1644行的注释取消,1637行的Mode后的模式改为“accept”,有三种模式:accept、repeat、route,三种模式的区别详情:https://suricata.readthedocs.io/en/suricata-4.1.4/configuration/suricata-yaml.html#suricata-yaml-nfq


#第1851行:默认规则路径,改为“/etc/suricata/rules”

将rule-files:下一行的规则文件改为" - test.rules",同时,在/etc/suricata/rules目录下打开终端输入“sudo touch test.rules”,作为自定义规则集,suricata的规则详情:https://suricata.readthedocs.io/en/suricata-4.1.4/rules/intro.html


#将1931行的threshold-file取消注释


!!最后记得保存修改的配置文件(ESC——>shift+:——>键入wq)


4.运行suricata的ips模式测试

(1)打开终端,输入"sudo su"以管理员身份运行,输入"suricata -h"查看命令行选项;

(2)输入"suricata --build-info"查看nfq模式是否加载,若加载,"NFQueue support:"后显示“yes”

(3)将修改配置文件步骤中新建的"test.rules"添加一条测试规则"drop icmp any any -> $HOME_NET any (msg:"ping !";sid:100001;rev:1;)"

(4)普通ids模式命令:"suricata -c /etc/suricata/suricata.yaml -i ens33"

(5)ips模式命令:"suricata -c /etc/suricata/suricata.yaml -q 0 --runmod workers",同时,打开另一个终端输入"sudo iptables -I INPUT -j NFQUEUE"、"sudo iptables -I OUTPUT -j NFQUEUE"、"sudo iptables -I FORWARD -j NFQUEUE"

(6)新打开一个终端输入"ping www.baidu.com",不能正常ping通,进入/etc/suricata/log目录下,查看fast.log文件,可以看到日志记录信息

(7)测试完成后,按“ctrl+C”结束进程,显示accept、drop等处理的包数目。

你可能感兴趣的:(suricata在Ubuntu下的源码安装编译与简单的ips模式测试)