fail2ban 禁止多次重复主机

The*_*olf 8 linux security fail2ban

我们在面向 Web 的服务器上使用 fail2ban 来阻止反复无法正确验证的 IP 地址。我们的正常禁止时间是一小时;使用recidivefail2ban 示例配置中包含的jail 将已被多次禁止的 IP 阻止一天。

选择一天的阻塞持续时间是为了不会过多地影响动态 IP,特别是考虑到recursivejail 不会阻塞特定端口,而是所有传入连接。但是,我们希望在更长的时间内禁止非常顽固的攻击者。目前,这是通过自定义super-recidive过滤器和监狱实现的。每个被禁止recidive两次的主机都会被这个监狱封锁整整一周(这个 IP 显然不是动态分配的)。

然而,理想情况下,我想将recidive过去(例如一周)禁止的每个 IP 禁止一周,并且在取消禁止后再次被任何监狱禁止。我知道这样的事情必须可以通过failregex包含反向引用的复杂来实现- 但是有没有更优雅的方法来做到这一点?

Hac*_*ash 0

我建议寻找更强大的 Web 应用程序防火墙,例如 NGINX。您可以将惯犯添加到您的 NGINX 黑名单中,其中可能有一组不同的规则来规定罪犯被阻止的时间。

示例: https: //www.nginx.com/blog/dynamic-ip-blacklisting-with-nginx-plus-and-fail2ban/