如何将 snort 放在 nginx 服务器前面

如何将 snort 放在 nginx 服务器前面

我想防止对我的 nginx 服务器的攻击。我如何通过 snort 将请求代理到 nginx 服务器。

NFQueue 是一个解决方案。我可以使用以下规则将数据包传递给 snort

sudo snort -Q --daq nfq --daq-var --daq-var queue=1 -c /etc/snort/snort.conf

现在我已经创建了队列

sudo /usr/sbin/iptables -t nat -I PREROUTING -j NFQUEUE --queue-num 1
sudo /usr/sbin/iptables -I FORWARD -j NFQUEUE --queue-num 1

这样就够了吗或者我们还需要做些其他的事情。

Nginx 与 snort 运行在同一个系统中。

答案1

如果您的问题是关于将 Snort 配置为 IPS 来保护您的服务器,我相信您按照正确的说明进行了设置。您创建的规则似乎合法;如果您还没有这样做,您必须下载并保持规则更新(我认为 PulledPork 或 Oinkcodes 可能会有所帮助),然后进行测试。创建服务来启动/重新启动/停止 Snort 也可能很方便。

如果您想知道使用 Snort 是否足以保护您的 Web 服务器,很遗憾,答案是否定的……

答案2

有点离题:根据您的情况,运行保护 nginx/web 请求的 snort 可能有点过大。此外,一旦您在 nginx 中使用 https,snort 将变得毫无用处。

如果你的主要目标是防范基于网络的攻击,那么你可能需要查看纳克西,一个真正优秀且快速的 Nginx waf 解决方案,除了一些特殊情况外,远远优于 mod_security。还有一个针对 naxsi 的扩展规则集,指南规则,它源于新兴威胁- snort 规则。

相关内容