14. 为Windows设置ips/inline¶
本指南介绍如何在Windows上使用windivert在第4层内联模式下使用suricata。
首先从使用windiver支持编译suricata开始。有关说明,请参阅 Windows Installation . 此文档尚未使用Windriver信息进行更新,因此请确保在配置Suricata之前添加以下标志 configure
:
--enable-windivert=yes --with-windivert-include=<include-dir> --with-windivert-libraries=<libraries-dir>
windivert.dll和windivert.sys必须与suricata可执行文件位于同一目录中。在运行时,windiver会自动安装驱动程序。有关windivert的更多信息,请参阅https://www.reqrypt.org/windivert-doc.html。
要检查您的Suricata中是否启用了windivert,请在提升的命令提示符或终端中输入以下命令:
suricata -c suricata.yaml --windivert [filter string]
有关windivert过滤器语言的信息,请参阅https://www.reqrypt.org/windivert doc.html过滤器语言
如果Suricata运行在网关上,并且是为了保护网关后面的网络,则需要在 NETWORK_FORWARD 层。这可以使用以下命令实现:
suricata -c suricata.yaml --windivert-forward [filter string]
当Suricata停止时,过滤器自动停止,正常流量恢复。
快速启动是检查所有流量,在这种情况下,您可以使用以下命令:
suricata -c suricata.yaml --windivert[-forward] true
其他几个例子:
仅TCP流量:
suricata -c suricata.yaml --windivert tcp
仅端口80上的TCP通信:
suricata -c suricata.yaml --windivert "tcp.DstPort == 80"
TCP和ICMP流量:
suricata -c suricata.yaml --windivert "tcp or icmp"