fail2ban为apache访问日志

我已经尝试了所有从Apache访问日志中获取主机的方法,但都没有成功

我的基本testing方法如下:

fail2ban-regex '87.97.244.57 - - [05/Nov/2015:12:46:24 -0500] "GET /index.php/?a=30%60%22( HTTP/1.1" 200 22639 "-" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)' '^<HOST> - - [[^]+] ".*60.20.*' 

我试过^<HOST> - - [[^]+] ".*60.20.* <HOST> - - [[^]+] ".*60.20.* [[]client []].*60.20.* ^<HOST>.*60.20.*$ .*60.20.* …等

他们要么错过了目标行或者我得到一个错误fail2ban.server.failregex.RegexException: No 'host' group in [...]

很难理解你想要做什么,来匹配主机,就像这么简单

 '^<host>' 

如果你想匹配更具体的东西然后

 '^<host> - - .*30%60%22' 

作品。

你已经得到的错误信息是因为(被解释为一个正则expression式分组的一部分,你没有终止,你应该像这样逃脱

 '^<host> - - .*30%60%22\('