黑客24小时在线接单的网站

黑客24小时在线接单的网站

开发环境下如何进行安全加固呢

由于公司机房和办公环境在一起,公司默认出口IP禁止80/443访问【运营商侧有限制】。目前阿里云用于中转,将开发环境的域名分析到阿里云,然后通过Nginx反向代理到公司出口非80端口。部分开发环境界面涉及第三方回调和验证,因此完全禁止开发环境访问外部网络是不现实的。

目前的合理需求如下:

               
  • 公司网络地址段可以不受限制地访问开发环境
  •                
  • 允许部分第三方IP在地址段加入白名单
  •                
  • 若第三方IP不固定,需要支持第三方回调URL加入白名单
  •                
  • 不在上述条件内全部禁止外网访问。
  • 如何实现上述简单的需求场景?

    方案1:采用防火墙白名单策略实现。目前, 1 和 2 的条件只能实现

    方案二:采用Nginx的allow、deny目前, 1 和 2 的条件只能实现

    方案三:采用Nginx Lua 通过access_by_lua_file目前,战略可以实现上述所有条件,相对简单,转型成本较低。

                   
  • 在Nginx的server层配置:access_by_lua_file 'scripts/filter_white.lua'
  •                
  • filter_white.lua 脚本配置信息:
  • root@develop:/usr/local/nginx/scripts#catfilter_white.lua
  • --默认配置
  • localredis=require'resty.redis'
  • localallow=false
  • --连接Redis
  • localred=redis:new()
  • localok,err=red:connect('172.17.173.183',26379)
  • ifnotokthen
  • ngx.log(ngx.ERR,'connecttoredisfailed:'..err)
  • end
  • localres,err=red:auth('Huajianghu@123')
  • ifnotresthen
  • ngx.log(ngx.ERR,'failedtoauthenticate:'..err)
  • end
  • --过滤精确IP
  • --ifred:sismember('white:dev:ip',ngx.var.remote_addr)==1then
  • --allow=true
  • --end
  • --过滤IP地址段
  • localiputils=require("resty.iputils")
  • iputils.enable_lrucache()
  • localwhite_ips=red:smembers('white:dev:ip')
  • localwhitelist=iputils.parse_cidrs(white_ips)
  • ifiputils.ip_in_cidrs(ngx.var.remote_addr,whitelist)then
  • allow=true
  • end
  • --过滤URL
  • ifnotallowthen
  • localurl=ngx.var.http_host..ngx.var.uri
  • localwhite_urls=red:smembers('white:dev:url')
  • forindex,white_urlinipairs(white_urls)do
  • ifurl:match(white_url)then
  • allow=true
  • break
  • end
  • end
  • end
  • --默认策略
  • ifnotallowthen
  • ngx.log(ngx.ERR,"notallow:"..ngx.var.http_host..ngx.var.uri)
  • ngx.status=ngx.HTTP_FORBIDDEN
  • ngx.say(申请白名单)
  • ngx.exit(200)
  • end
  • 3.此脚本仅供参考,特殊场景需修改lua脚本。

       
    • 评论列表:
    •  野欢听茶
       发布于 2022-06-11 22:02:57  回复该评论
    • a 脚本配置信息:root@develop:/usr/local/nginx/scripts#catfilter_white.lua--默认配置localredis=require'resty.redis'localallow=false--连接Redislocalred=
    •  酒奴橪书
       发布于 2022-06-11 21:31:14  回复该评论
    • P不固定,需要支持第三方回调URL加入白名单                不在上述条件内全部禁止外网访问。如何实现上述简单的需求场景?方案1:采用防火墙白名单策略实现。目前, 1 和 2 的条件只能实现方案二:采用Nginx的all
    •  边侣断渊
       发布于 2022-06-12 03:35:07  回复该评论
    •        不在上述条件内全部禁止外网访问。如何实现上述简单的需求场景?方案1:采用防火墙白名单策略实现。目前, 1 和 2 的条件只能实现方案二:采用Nginx的allow、deny目前, 1 和 2 的条件只能实现方案三:采用Nginx Lua 通过acc
    •  孤鱼时窥
       发布于 2022-06-12 04:02:03  回复该评论
    • (white_ips)ifiputils.ip_in_cidrs(ngx.var.remote_addr,whitelist)thenallow=trueend--过滤URLifnotallowthenlocalurl=ngx.var.http_hos
    •  弦久十驹
       发布于 2022-06-12 07:29:57  回复该评论
    • ile目前,战略可以实现上述所有条件,相对简单,转型成本较低。                在Nginx的server层配置:access_by_lua_file 'scripts/filter_white.lua'                filter_whit

    发表评论:

    Powered By

    Copyright Your WebSite.Some Rights Reserved.