我将设置fail2ban来监视proxysql.log文件,如果检测到一些特定的ERROR,则在SLACK上发送警告消息。我在centOS 7.7上运行,后面是安装和配置文档,然后只允许我在设置"backend=systemd"时重新启动fail2ban,但问题是"logpath"不会指向我设置的任何日志文件。如果我将后端更改为任何其他后端,"systemctl restart fail2ban"将始终失败。我在网上读了一些,在服务器上安装了pynotify和gamin-lib,仍然存在同样的问题。所以我请求那些能帮助我解决现在问题的人的帮助。
我现在只有:
- jail.conf设置了一个名为proxysql的监狱
- 在filter.d文件夹中为failregex设置一个筛选器
- 在action.d文件夹中有一个操作,用于向SLACK发送消息
为某个监狱或默认设置backend = systemd
将完全忽略logpath
,因为受此影响的监狱将只监视系统日志。
如果我将后端更改为任何其他后端,"systemctl restart fail2ban"将始终失败。
- 你想改变哪个监狱的后台?你应该只对真正有日志文件的监狱这样做(所以不要对默认部分这样做,如果你的其他监狱应该监控systemd日志,否则你会因为失败而启动每个启用的监狱2而出错,因为它找不到日志文件(
- 您在fail2ban.log(或fail2ban日志,例如
journalctl -ru fail2ban
(中看到任何错误吗 - 您也可以尝试通过客户端(
?sudo? fail2ban-client -vv start
(启动它以获取更多信息
另请查看我们的wiki中的常见问题解答-https://github.com/fail2ban/fail2ban/wiki/Troubleshooting以获得可能的答案 - 至于后端:
pyinotify
还希望为与(例如fail2ban-python --version
(一起运行的python故障2板安装py通知模块。如果是3.x,那么您应该为python3安装pyinetify - 你试过
backend = auto
吗?因为由于回退失败2切换到polling
后端(始终可用(仅当文件(用logpath
指定(不存在时出错