当后端= jail.local文件中的systemd时,有没有办法在fail2ban中设置指向特定日志文件(proxysql.log)的“ logpath”点?

时间:2019-10-24 18:18:48

标签: fail2ban

我将设置fail2ban来监视proxysql.log文件,如果检测到某些特定的错误,则在SLACK上发送警告消息。 我在centOS 7.7上运行,随后是安装和配置的文档,然后仅在设置“ backend = systemd”时允许我重新启动fail2ban,但是问题是“ logpath”不会指向我设置的任何日志文件。如果将后端更改为其他任何后端,则“ systemctl restart fail2ban”将始终失败。我在网上读了一些书,并在服务器上安装pynotify和gamin库,仍然是同样的问题。因此,我正在寻求可以帮助我解决当前问题的人的帮助。

我现在所拥有的是:

  1. jail.conf设置了一个名为proxysql的监狱
  2. 在filter.d文件夹中为failregex设置过滤器
  3. 在action.d文件夹中有一个动作,用于向SLACK发送消息

1 个答案:

答案 0 :(得分:0)

backend = systemd设置为某些监禁或默认设置将完全忽略logpath,因为受此影响的监狱将仅监视系统日志。

  

如果我将后端更改为其他任何后端,则“ systemctl restart fail2ban”将始终失败。

  1. 您要更改哪个监狱的后端?您应该仅对真正具有日志文件的监狱进行此操作(因此,如果其他监狱应监视systemd-journal,则不要对默认部分执行此操作,否则对于每个fail2ban不会启用的监狱,您将在启动时得到错误提示找不到日志文件。
  2. 您在fail2ban.log(或fail2ban日志,例如journalctl -ru fail2ban)中看到任何错误吗?
  3. 您也可以尝试通过客户端(?sudo? fail2ban-client -vv start)启动它以获取更多信息。
    另外,请查看我们的Wiki中的常见问题解答-https://github.com/fail2ban/fail2ban/wiki/Troubleshooting,以获得可能的答案。
  4. 对于后端:pyinotify还期望为运行(例如fail2ban-python --version)的python fail2ban安装pyinotify模块。如果是3.x,则需要为python3安装pyinotify。
  5. 您尝试过backend = auto吗?因为作为后备​​fail2ban将 切换到polling后端(始终可用),它将 仅当文件(用logpath指定)不存在时出错。