因此,我已经阅读了几天的问题,似乎在任何地方都找不到解决办法。我正在一个web服务器实验室上做一些测试,我已经设置了两个‘m(Ubuntu20.04)服务器和客户机。在服务器上,我配置了一个PHP登录应用程序,当有人登录失败时,它会给我这个日志。
root@local:/var/log/apache2# tail -f error.log
[Fri Jun 18 10:13:37.657446 2021] [php7:notice] [pid 2465] [client 192.168.1.11:44750] [error] failed login, referer: http://192.168.1.10/index.php
[Fri Jun 18 10:13:41.434454 2021] [php7:notice] [pid 2465] [client 192.168.1.11:44750] [error] failed login, referer: http://192.168.1.10/index.php
[Fri Jun 18 10:13:46.236750 2021] [php7:notice] [pid 2465] [client 192.168.1.11:44750] [error] failed login, referer: http://192.168.1.10/index.php并配置Fail2Ban v0.11.1来捕获它。/etc/Fail2ban/监狱。本地:
[login-ban]
enabled = true
port = http,https
filter = login-ban
logpath = /var/log/apache2/error.log
maxretry = 3
findtime = 180
bantime = 60/etc/故障2ban/filter.d/登录-ban.conf:
[Definition]
failregex = ^\[.*\]\s\[.*]\s\[.*].*\[client.*<HOST>\].*\[error\].*
ignoreregex =现在,如果我检查Fail2Ban-regex,这个regex就能很好地工作了:
fail2ban-regex /var/log/apache2/error.log /etc/fail2ban/filter.d/login-ban.conf --print-all-matched我得到了
|- Matched line(s):
| [Fri Jun 18 10:36:07.312503 2021] [php7:notice] [pid 780] [client 192.168.1.11:44754] [error] failed login, referer: http://192.168.1.10/index.php
| [Fri Jun 18 10:36:14.417955 2021] [php7:notice] [pid 784] [client 192.168.1.11:44756] [error] failed login, referer: http://192.168.1.10/index.php但是fail2ban并没有禁止IP,fail2ban.log也向我发出了DNS警告:
2021-06-18 10:50:22,083 fail2ban.ipdns [2154]: WARNING Determined IP using DNS Lookup: 8 = {'0.0.0.8'}
2021-06-18 10:50:22,085 fail2ban.filter [2154]: INFO [login-ban] Found 0.0.0.8 - 2021-06-18 10:50:22我尝试过将usedns参数设置为' no‘和'raw’,唯一能完成的事情就是去掉dns警告日志,仍然没有禁止和记录试图登录的主机。
我希望这是足够的信息,这将帮助像我一样在那里的人。
发布于 2021-06-18 10:35:18
offtopic :请将这个问题移到服务器故障或其他更合适的站点(这是SO的非主题)
至于您的问题,只需停止使用catch (.*等),例如,要使其工作的一项更正可能是:
- ... \[client.*<HOST>\] ...
+ ... \[client <HOST>:\d+\] ...RE .*是贪婪的,所以它匹配尽可能多的字符,<HOST>可以匹配任何东西(主机名),而不仅仅是地址,如果您的fail2ban版本>= 0.10,最好使用<ADDR>。
而且您的整个表达式都是“易受攻击”的,因为有几个陷阱(因此锚没有被真正占据)。
https://stackoverflow.com/questions/68032267
复制相似问题