suricata ips模式 编译安装方法+suricata的一些常见运行命令和注意事项---------未完,待补充

suricata ips模式 编译安装运行方法+一些错误定位或注意事项

一、 suricata ips模式的编译安装运行方法

1>安装依赖
sudo apt-get -y install libpcre3 libpcre3-dbg libpcre3-dev
build-essential autoconf automake libtool libpcap-dev libnet1-dev
libyaml-0-2 libyaml-dev zlib1g zlib1g-dev libcap-ng-dev libcap-ng0
make libmagic-dev libjansson-dev libjansson4 pkg-config

sudo apt-get -y install libnetfilter-queue-dev libnetfilter-queue1 libnfnetlink-dev libnfnetlink0 libnetfilter-log-dev

2>编译suricata
-规则文件和配置文件
创建/var/configuration/suricata 和 /var/log/suricata 还有suricata.yaml配置的rules规则文件目录这几个目录。suricata.yaml配置文件放在/var/configuration/suricata目录下。
对应suricata.yaml配置文件里的设置:

default-log-dir: /var/log/suricata/
default-rule-path: /var/rules/
rule-files:
  #rules文件地址
  - /var/rules/signature-dpi/signature.rules
  - /var/rules/signature-dpi/signature1.rules

IPS模式需要配置suricata.yaml的nfq选项:

nfq:
  mode: accept
#  repeat-mark: 1
#  repeat-mask: 1
#  bypass-mark: 1
#  bypass-mask: 1
#  route-queue: 2
  batchcount: 20
  fail-open: yes  *#打开该选项,代表当suricata读取的nfqueue队列已满时,无法入队的包允许通过而非丢弃。*

IPS模式配置workers运行模式性能最佳:

runmode: workers

开始编译suricata:
进入suricata源码目录
chmod -R 777 *
sudo ./configure --enable-nfqueue --prefix=/usr --sysconfdir=/var/configuration --localstatedir=/data --disable-gccmarch-native
sudo make
sudo make install
-运行测试:
执行命令:suricata -c /var/configuration/suricata/suricata.yaml -q 0 程序保持运行没有退出则运行基本正确。如果运行后程序直接结束了,则检查上面的目录是不是都正确创建了,比如default-log-dir: /var/log/suricata/。
suricata nfq模式下实际监听的数据来源来自iptables,它是通过iptables的nfqueue规则将数据包的判定权拿到,从根据规则过滤数据包给出数据包行为判定(丢弃或允许之类的),从而达到入侵防御的作用:
比如用于防火墙转发数据监控时,在iptables的FORWARD链上插入一条规则nfqueue规则:

iptables -I FORWARD -j NFQUEUE --queue-bypass

上面这条规则没有显示的指定–queue-num x,默认queue-num是0。而–queue-bypass选项作用是如果没有任何程序在监听queue 0接收数据时,则默认通过该数据包,而非丢弃。

如果nfqueue多队列的话,对应的iptables规则和suricata运行命令如下:

iptables -I FORWARD -j NFQUEUE --queue-balance 0:3 --queue-bypass
suricata -c  /var/configuration/suricata/suricata.yaml -q 0 -q 1 -q 2 -q 3  

二、suricata的一些常见运行命令和注意事项

1.使用suricata进行pcap包读取时的运行命令如下:

suricata -c /xx/xx/suricata.yaml -r xxxx.pcap

注:suricata读pcap包时,配置文件的运行模式不可以是workers模式。

2.使用suricata进行网卡抓包的运行命令如下:

suricata -c /xx/xx/suricata.yaml -i  eth0

3.suricata的运行错误,如果没有任何错误报错输出就直接结束,可以检查下配置文件的日志是否没打开,default-log-level字段设置成none,将不输出任何日志提示:

# Logging configuration.  This is not about logging IDS alerts/events, but
# output about what Suricata is doing, like startup messages, errors, etc.
logging:
  # The default log level, can be overridden in an output section.
  # Note that debug level logging will only be emitted if Suricata was
  # compiled with the --enable-debug configure option.
  #
  # This value is overridden by the SC_LOG_LEVEL env var.
  #default-log-level: notice
  default-log-level: debug #如果设置成none是没有任何日志输出

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值