nginx 能否禁IP
查看了一下nginx的日志,发现有一些IP在一秒内有上百个访问日志22.39.58.17 - - "HEAD /1cnn%7Bext%7D HTTP/1.1" 444 0 "http://www.xxx.com/1cnn{ext}" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" 10.12.17.17 0.000 - - -22.39.58.17 - - "HEAD /2cnn%7Bext%7D HTTP/1.1" 444 0 "http://www.xxx.com/2cnn{ext}" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" 10.12.17.27 0.000 - - -
22.39.58.17 - - "HEAD /3cnn%7Bext%7D HTTP/1.1" 444 0 "http://www.xxx.com/3cnn{ext}" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" 10.12.17.37 0.000 - - -
22.39.58.17 - - "HEAD /4cnn%7Bext%7D HTTP/1.1" 444 0 "http://www.xxx.com/4cnn{ext}" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" 10.12.17.47 0.000 - - -
22.39.58.17 - - "HEAD /5cnn%7Bext%7D HTTP/1.1" 444 0 "http://www.xxx.com/5cnn{ext}" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" 10.12.17.57 0.000 - - -
22.39.58.17 - - "HEAD /6cnn%7Bext%7D HTTP/1.1" 444 0 "http://www.xxx.com/6cnn{ext}" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" 10.12.17.67 0.000 - - -
22.39.58.17 - - "HEAD /7cnn%7Bext%7D HTTP/1.1" 444 0 "http://www.xxx.com/7cnn{ext}" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" 10.12.17.77 0.000 - - -
22.39.58.17 - - "HEAD /8cnn%7Bext%7D HTTP/1.1" 444 0 "http://www.xxx.com/8cnn{ext}" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" 10.12.17.87 0.000 - - -
,显然这是不正常的,用nginx能否自动禁止掉这些(按条件,一秒内达多少次访问的同一地址请求)IP呢?用nginx屏蔽IP的话还得重启?nginx应该不能直接使用到iptables吧 上面日志上都已经显示444了,不需要处理
要屏蔽掉head 之类的http方法可以论坛搜索: 屏蔽 http 方法 原帖由 licess 于 2018-8-6 20:12 发表 http://bbs.vpser.net/images/common/back.gif
上面日志上都已经显示444了,不需要处理
要屏蔽掉head 之类的http方法可以论坛搜索: 屏蔽 http 方法 已在NGINX文件中添加了 if ($request_method !~* GET|POST|HEAD) {return 403;}
但在日志中依然发现了这样的访问:
180.97.106.39 - - "\x05\x02\x00\x02" 400 166 "-" "-" - 4.170 - - -
120.132.3.65 - - "\x00\x9C\x00\x01\x1A+<M\x00\x01\x00\x00\x01\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x03\xFF\xFF\x00\x01local\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00cananian\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" 400 166 "-" "-" - 0.014 - - -
......
像这些的都是什么访问格式?如何禁止?
这样添加的内容不对?
server{
listen 80;
server_name abc.def.com; //在下面添加不对?nginx -t显示正确
if ($request_method !~* GET|POST|HEAD) {
return 403;
}
index index.html index.php;
root /home/abc;
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
include enable-php.conf;
location /favicon.ico{
log_not_found off;
access_log off;
}
回复 3# 的帖子
这个没办法,没有具体的http方法可能是扫描漏洞之类的回复 1# 的帖子
试试fail2ban 看看,了解一下 我用 fail2ban+Firewalld 限制IP 访问量补充内容 (2019-6-1 12:58):
https://www.itbiji.net/archives/850.html
可以了解下
页:
[1]