Fail2Ban 过滤器错误

Roa*_*ode 2 filter fail2ban

我正在尝试添加两个 fail2ban 过滤器,一个用于 post flood 和 phpmyadmin brute force,但出现以下错误。

日志:

fail2ban.filter : ERROR  No 'host' group in '[[]client []] File does not exist: /var/www/(?:PMA|phpmyadmin|myadmin|mysql|mysqladmin|sqladmin|mypma|admin|xampp|mysqldb|mydb|db|pmadb|phpmyadmin1|phpmyadmin2)'

fail2ban.filter : ERROR  No 'host' group in '^ -.*”POST.*'
Run Code Online (Sandbox Code Playgroud)

监狱.conf:

[apache-phpmyadmin]
enabled  = true
port     = http,https
filter   = apache-phpmyadmin
logpath  = /var/log/apache*/*error.log
maxretry = 3

[apache-postflood]
enabled = true
port = http,https
filter = apache-postflood
logpath = /var/log/apache*/*flood.log
findtime = 10
maxretry = 10
Run Code Online (Sandbox Code Playgroud)

apache-phpmyadmin.conf 过滤器:

[Definition] 
docroot = /var/www
badadmin = PMA|phpmyadmin|myadmin|mysql|mysqladmin|sqladmin|mypma|admin|xampp|mysqldb|mydb|db|pmadb|phpmyadmin1|phpmyadmin2
failregex = [[]client []] File does not exist: %(docroot)s/(?:%(badadmin)s)
ignoreregex =
Run Code Online (Sandbox Code Playgroud)

apache-postflood.conf 过滤器:

[Definition]
failregex = ^ -.*”POST.*
ignoreregex =
Run Code Online (Sandbox Code Playgroud)

Mic*_*ton 7

failregex缺少<HOST>必须在 IP 地址出现在日志条目中的位置插入的特殊字符串。这是必需的,以便fail2ban 知道它应该作用于哪个IP 地址。

  • 这就是盲目从互联网上复制东西的问题。在这种情况下,您阅读的教程中存在明显错误。正确的行是:`failregex = ^&lt;HOST&gt; -.*"POST.*` 如果你查看那个页面的源代码,你会看到它实际上在那里,但它没有正确地转义 HTML。智能引号没有帮助要么,也会导致它无法匹配。 (2认同)