在fail2ban
实施中,我有一个jail
来缩减 getfloods 。即,在一个时间范围内过多的GET响应被禁止。
fail2ban
通过我提供的基本正则表达式检测到这些。即:
failregex = ^<HOST>.*"GET.*
该正则表达式在我的nginx access.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;
现在我想在这里添加一个微妙的东西。我只想解析属于以/vote/
开头的特定网址格式的GET行,而不是所有GET行。请参阅以下示例:
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/.*
是
答案 0 :(得分:0)
你需要逃避正斜杠。
failregex = ^<HOST>.*"GET \/vote\/.*