0x01 介绍
老是有人喜欢拿 WordPress 的 Pingback、ApacheBench 等 CC 你的服务器,真是闲的蛋疼。
0x02 解决方案
直接让 Nginx 返回 101,过滤掉垃圾请求。
0x03 方案执行
1. 在 nginx.conf 配置中,添加如下配置并保存:
if ($http_user_agent ~* (ApacheBench|pingback|WordPress|MJ12bot|AhrefsBot|360JK|PHP|php|Jorgee) ) {return 101;} if ($http_user_agent = "" ) {return 101;} if ( $request = "POST /reg.html HTTP/1.1" ) {return 400;} if ( $request = "POST / HTTP/1.1" ) {return 400;} if ( $request = "POST / HTTP/1.0" ) {return 400;} if ( $request = "POST // HTTP/1.0" ) {return 400;}
2. 重启 nginx 服务器。
0x04 注意事项
只能简单处理掉低能 CC 请求,某些无视状态的高级 CC 攻击只能通过脚本写入 iptables 防火墙 ban 掉。
nginx: [emerg] “if” directive is not allowed here in /etc/nginx/nginx.conf