nginx禁止/过滤某个IP访问

155

nginx中可通过写入配置文件的方法来达到一定的过滤IP作用,可使用deny来写。

deny的使用方法可用于前端服务器无防护设备的时候过滤一些异常IP,过滤的client ip会被禁止再次访问,起到一定的阻断作用。

1.设置整服务nginx禁止IP访问方法:

首先建立下面的配置文件放在nginx的conf目录下面,命名为blocksip.conf,并写入内容:

deny 192.168.1.1;      #过滤单个IP
deny 192.168.1.0/24;    #过滤整个地址段
deny all;               #过滤所有IP
allow 192.168.1.1;      #与deny all;组合是指除192.168.1.1外其他都过滤

保存一下。 

在nginx的配置文件nginx.conf中加入:

http{

    include blocksip.conf;

}

然后重新重载nginx配置;


2.可能你服务器存放多个网站,我们只需要相关网站禁止该IP,那我们就可以单独屏闭某一个网站IP:

在server"{}",在这个大括号内加入

deny IP地址是限制某IP地址访问;

allow IP地址是只允许某IP地址访问;


#屏蔽单个IP的命令是
deny 192.168.1.1
deny 192.168.2.1
#封整个段即从192.168.1.1到192.168.1.254的命令
deny 192.168.1.1/8
#封IP段即从192.168.1.1到192.168.1.254的命令
deny 192.168.1.1/16
#封IP段即从192.168.1.1到192.168.1.254的命令是
deny 192.168.1.1/24

2222.png