0

在一个fail2ban实现中,我有一个jail存在来减少getfloods。即,在一个时间范围内有太多的 GET 响应被禁止。

fail2ban通过我喂过的基本正则表达式检测到那些。IE:

failregex = ^<HOST>.*"GET.*

该正则表达式在我的 nginxaccess.log文件中解析如下行,并采取必要的措施。

39.54.230.53 - - [07/Mar/2016:11:59:43 +0000] "GET / HTTP/1.1" 499 0 "http://example.com/" "Mozilla/5.0 (Linux; Android 4.4.2;

现在我想在这里添加一个微妙之处。而不是所有 GET 行,我只想解析与以/vote/. 请参见以下示例:

31.13.113.92 - - [07/Mar/2016:15:36:48 +0000] "GET /vote/1564968/39947/5/1/ HTTP/1.1" 302 5 "http://example.com/?io

我的问题很简单。如何调整我的正则表达式?会不会是:

failregex = ^<HOST>.*"GET /vote/.*

是的?

4

1 回答 1

0

您将需要转义正斜杠。

failregex = ^<HOST>.*"GET \/vote\/.*
于 2016-03-08T04:59:39.323 回答