Nginx配置之屏蔽某IP访问

本文介绍如何使用Nginx的deny和allow指令控制特定IP或IP段的访问,包括查看日志中IP访问次数的方法,以及如何在http、server、location等语句块中应用这些指令。

查看Nginx日志中ip访问次数

awk '{print $1}' access.log |sort |uniq -c|sort -n

结果:

42 222.64.157.100
48 106.120.173.114
50 47.98.251.56
51 47.98.233.179
56 47.98.248.214
68 58.38.91.171
71 124.76.148.25

在http, server, location, limit_except语句块新加

deny 124.76.148.25

可抽取到单独conf文件中

将deny语句加入blockip.conf中,并且在上述语句块中include此文件

include blockip.conf

屏蔽所有ip访问

deny all

允许所有ip访问

allow all

除了几个IP外,其他全部拒绝

allow 1.1.1.1;
allow 1.1.1.2;
deny 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

单独网站屏蔽IP的方法

把include blockip.conf放到网址对应的在server {}语句块。

所有网站屏蔽IP的方法

把include blockip.conf放到http {}语句块。

配置可参考

http语句块

http {
    deny 1.1.1.1;
    allow all;
}

server语句块

server {
    allow 127.0.0.1;
    deny all;
}

location语句块

location / {
    deny 123.0.0.0/8
}

原文地址

https://www.zhangbj.com/p/26.html

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值