suricata提供了suricatasc这个工具用来与其进行通信,比如修改规则文件后,通知suricata重新加载规则,就可以通过suricatasc下发重新加载规则命令,suricatasc和suricata通过unix socket进行通信,unix socke好处就是不占用网络端口,避免对外暴露端口,性能也非常高。
下面,我们来看一下suricata command这一块的代码实现以及如何自定义一个command命令。
1、suricatasc目前支持的命令如下:
command-list:列出可用命令
shutdown:关闭Suricata
iface-list:列出Suricata嗅探数据包的接口
iface-stat:接口的列表统计信息
help:命令列表的别名
version:显示Suricata的版本
uptime:显示Suricata的正常运行时间
running-mode:显示运行模式(workers,autofp,simple)
capture-mode:使用的显示捕获系统
conf-get:获取配置项(参见下面的示例)
dump-counters:dump Suricata的性能指标
reopen-log-files:重新打开日志文件(在外部日志轮换后运行)
ruleset-reload-rules:重新加载规则集并等待完成
ruleset-reload-nonblocking:重新加载规则集,无需等待即