Nginx配置限制IP访问

Nginx配置限制IP访问

有时候我们需要针对屏蔽某些恶意的IP访问我们的网站,或者限制仅仅某些白名单IP才能访问我们的网站。这时候我们就可以在nginx中通过简单的配置来达到目的。

相关配置语句
  1. 屏蔽单个ip访问

    # 格式: deny ip;
    deny 123.68.23.5;
    
  2. 允许单个ip访问

    # 格式: allow ip;
    allow 123.68.25.6;
    
  3. 屏蔽所有ip访问

    deny all;
    
  4. 允许所有ip访问

    allow all;
    
  5. 屏蔽ip段访问

    # deny ip/mask
    # 屏蔽172.12.62.0到172.45.62.255访问的命令 
    deny 172.12.62.0/24;
    
  6. 允许ip段访问

    # allow ip/mask
    # 屏蔽172.102.0.0到172.102.255.255访问的命令 
    allow 172.102.0.0/16;
    
配置说明
  1. 可新建一个配置文件,如blockip.conf。在其中编写相关的ip限制语句,然后在nginx.conf中加入如下配置:

    # 配置ip限制策略
    include blockip.conf; 
    
  2. nginx会根据配置文件中的语句,从上至下依次判断。因此,写在前面的语句可能会屏蔽后续的语句。

    • 除部分ip白名单外,屏蔽所有ip的错误示例

      deny all; # 该语句已经禁止所有ip的访问,后续的配置不会生效
      allow 123.45.25.6;
      allow 123.68.52.125;
      allow 123.125.25.106;
      
    • 正确示例

      # 允许部分ip访问
      allow 123.45.25.6;
      allow 123.68.52.125;
      allow 123.125.25.106;
       # 禁止其余ip访问
      deny all; 
      
  3. 屏蔽策略文件可以放在http, server, location, limit_except语句块中,我们可以根据需要合理的配置。

    放置位置效果备注
    httpnginx中所有服务起效-
    server指定的服务起效-
    location满足的location下起效-
    limit_except指定的http方法谓词起效-
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值