文章地址:http://www.nginx.cn/2487.html
1.在nginx日志中查找需要屏蔽的IP地址。
awk '{print $1}' nginx.access.log | sort | uniq -c | sort -n
通过上面那条命令会得到ip的访问次数和IP地址。通过查看IP地址的访问次数,可以将其进行屏蔽掉。
2.新建屏蔽IP地址的配置文件。
include deny.conf
该配置可以放到http,server,location,limit_except语句块内。
3.重启nginx即可生效。
deny.conf配置方法:
屏蔽单个IP地址:
deny 172.16.76.151;
允许单个IP地址访问:
allow 172.16.76.152;
屏蔽所有的IP地址访问:
deny all;
允许所有的IP地址访问:
allow all;
屏蔽整个段即从123.0.0.1到123.255.255.254访问的命令
deny 123.0.0.0/8
屏蔽IP段即从123.45.0.1到123.45.255.254访问的命令
deny 124.45.0.0/16
屏蔽IP段即从123.45.6.1到123.45.6.254访问的命令
deny 123.45.6.0/24