zoukankan      html  css  js  c++  java
  • nginx geo黑名单

    在nginx 配置目录中创建geo.conf配置文件,内容如下
    geo  $bad  {
    default          0;
    include /opt/nginx/conf/vconf/ip_list.conf;
    }
     
    创建ip_list.conf  , 这个文件中是你要禁止访问的IP地址,内容如下:
    100.7.289.41 1;
    100.8.210.0/24 1;
     
    然后在nginx 主配置文件 nginx.conf 中引入geo.conf配置
    include vconf/geo.conf;
     
    在一个拦截策略配置 hook.conf  添加内容
    if ($bad) {
        return 404;
    }
     
    好了,现在在你需要启用IP黑名单拦截的,域名中引入 hook.conf 配置,如:
    nginx -t  检查通过后 nginx reload
    这样 s.test.com 域名就开启了对黑名单中IP的拦截
     
    #---
    IP黑名单(ip_list.conf) : 在里面添加禁止的IP,IP段 ,设置值为 1
    geo配置 (geo.conf):引入IP黑名单(ip_list.conf) ,geo 中 default 为 0  (默认值为0 , ip黑名单中IP的值是 1)
    拦截规则 (hook.conf):if ($bad) ,  if 语句,if 后直接跟变量名;如果变量值为空或者是以“0”开始的字符串,则条件为假;
    因为黑名单中IP 的值是1 ,这里条件为真,返回return 404 ,这样就做到了nginx 黑名单功能
    在nginx的使用建议,把通用的配置都单独抽里出来写成一个配置,需要的时候include引入。
     
  • 相关阅读:
    在线课程的总结
    数据库相关整理
    两个栈实现队列&两个栈实现队列
    Django中间件的5种自定义方法
    Python Web开发之路
    内置函数——format
    Django组件拾忆
    支付宝支付流程
    消息队列之RabbitMQ
    WebSocket
  • 原文地址:https://www.cnblogs.com/fanpiao/p/15123481.html
Copyright © 2011-2022 走看看