这里有一个问题,Fail2ban无法识别IP,所以我试图禁止失败的MySQL访问,下面是要监视的syslog
Sep 6 01:45:18 vps6XXXXX mysqld: 2019-09-06 1:45:18 140581192722176 [Warning] IP address '120.160.120.60' has been resolved to the host name '67.subnet120-160-120.speedy.telkom.net.id', which resembles IPv4-address itself.
Sep 6 01:45:18 vps6XXXXX mysqld: 2019-09-06 1:45:18 140581192722176 [Warning] Access denied for user 'global'@'120.160.120.60' (using password:YES)但是,fail2ban未能读取检测为0.0.0.7的120.160.120.60的IP地址。来自fail2ban.log的日志文件如下所示
2019-09-06 01:45:18,742 fail2ban.filter [3793]: WARNING Determined IP using DNS Lookup: 7 = ['0.0.0.7']
2019-09-06 01:45:18,742 fail2ban.filter [3793]: INFO [mysql] Found 0.0.0.7这是我的自定义filter.d mysql.conf正则表达式
[Definition]
failregex = ^.*\[Warning\] Access denied for user.*<HOST>.*\(using password: YES\)$
ignoreregex =我不确定这个fail2ban是无法确定IP还是我的regex失败完成了工作。
我希望就这一问题提出任何建议或解决办法。谢谢。
发布于 2019-10-10 23:41:46
虽然类似的烦人的双重时间戳问题是已知的(一些服务重新部署)。我不知道日志消息中的格式为什么会在不同的系统之间发生变化。
无论如何,现在应该修复它(参见https://github.com/fail2ban/fail2ban/commit/50595b70fd4e2563ba816acf4877775eda36e248)。
顺便说一下。您的正则表达式有一点“易受攻击”,因为没有锚定(^.*没有任何意义),并且在<HOST>之前和之后都包含了catch-all's (.*)。
https://serverfault.com/questions/982126
复制相似问题