首页 > 其他 > 详细

nginx geo黑名单

时间:2021-08-10 16:39:27      阅读:7      评论:0      收藏:0      [点我收藏+]
在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引入。
 

 

nginx geo黑名单

原文:https://www.cnblogs.com/fanpiao/p/15123481.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!