fail2ban 禁止状态代码为 200 的 GET get.php 请求

fail2ban 禁止状态代码为 200 的 GET get.php 请求

所以我对这些都还很陌生。日志如下所示:

213.135.179.254 - - [27/Apr/2017:17:39:06 +0200] "GET /get.php?username=1515&password=1515&type=m3u HTTP/1.1" 200 0 "-" "-"
213.135.179.254 - - [27/Apr/2017:17:39:06 +0200] "GET /get.php?username=1859&password=1859&type=m3u HTTP/1.1" 200 0 "-" "-"
213.135.179.254 - - [27/Apr/2017:17:39:07 +0200] "GET /get.php?username=1877&password=1877&type=m3u HTTP/1.1" 200 0 "-" "-"

所以我需要自定义过滤器和其他一切。我想禁止发送超过 10 个此类请求的每个 IP。好吧,诀窍是当他们发送这样的请求时,它是错误的 URL,我的意思是,他们什么也得不到。当 IP 发送正确的 get.php 请求时,他们会得到可下载的 m3u 文件,所以我认为它的状态代码是 302?所以我想禁止发送超过 10 个错误 get.php 请求的 IP,状态代码为 200。请帮忙

编辑:当 get.php 请求有效时,它看起来是这样的:

185.24.35.240 - - [30/Apr/2017:15:14:27 +0200] "GET /get.php?username=bracelo@apan-135d&password=4sfZ8va5OS&type=m3u&output=mpegts HTTP/1.1" 200 93528 "-" "VLC/2.2.4 LibVLC/2.2.4"
185.24.35.240 - - [30/Apr/2017:15:14:37 +0200] "GET /get.php?username=tester2ip@262sdf&password=D86Td3v3TP&type=m3u&output=mpegts HTTP/1.1" 200 92588 "-" "VLC/2.2.4 LibVLC/2.2.4"

答案1

Http 200 是成功的 http 代码...

为您提供一些基本信息: https://en.m.wikipedia.org/wiki/List_of_HTTP_status_codes

如果您确实想要禁止这些...(不推荐)那么只需为此设置一个 fail2ban 过滤器...将返回状态更改为 403,然后使用它设置 fail2ban。

[Definition]
failregex = <HOST>.*GET.*(get\.php).* 403 

相关内容