開發(fā)環(huán)境下如何進行安全加固呢

2022-10-06    分類: 網(wǎng)站建設(shè)

由于公司機房和辦公環(huán)境是在一起的,默認情況下公司出口IP是禁止80/443訪問【運營商側(cè)有限制】。目前采用的是阿里云進行中轉(zhuǎn),即將開發(fā)環(huán)境的域名解析到阿里云,然后通過Nginx反向代理到公司出口非80端口。開發(fā)環(huán)境部分接口涉及到第三方回調(diào)和校驗,所以完全禁止開發(fā)環(huán)境對外網(wǎng)訪問不現(xiàn)實。

開發(fā)環(huán)境下如何進行安全加固呢

目前合理的需求如下:

公司網(wǎng)絡(luò)地址段可以訪問開發(fā)環(huán)境不受限制 允許部分第三方IP地址段加入白名單 若第三方IP不固定,需支持第三方回調(diào)的URL加入白名單 不在上述條件內(nèi)全部禁止外網(wǎng)訪問。

面對上述簡單的需求場景,我們?nèi)绾螌崿F(xiàn)呢?

方案一:采用防火墻白名單策略進行實現(xiàn),目前看只能實現(xiàn) 1 和 2 的條件

方案二:采用Nginx的allow、deny等策略,目前看也只能實現(xiàn) 1 和 2 的條件

方案三:采用Nginx+Lua 通過access_by_lua_file策略,目前看能實現(xiàn)上述所有條件而且實現(xiàn)起來比較簡單,改造成本較小。

在Nginx的server層配置:access_by_lua_file 'scripts/filter_white.lua' filter_white.lua 腳本配置信息: root@develop:/usr/local/nginx/scripts# cat filter_white.lua -- 默認配置 local redis = require 'resty.redis' local allow = false -- 連接Redis local red = redis:new() local ok, err = red:connect('172.17.173.183', 26379) if not ok then ngx.log(ngx.ERR, 'connect to redis failed: ' .. err) end local res, err = red:auth('Huajianghu@123') if not res then ngx.log(ngx.ERR, 'failed to authenticate: ' .. err) end -- 過濾精確IP --if red:sismember('white:dev:ip', ngx.var.remote_addr) == 1 then -- allow = true --end -- 過濾IP地址段 local iputils = require("resty.iputils") iputils.enable_lrucache() local white_ips =red:smembers('white:dev:ip') local whitelist = iputils.parse_cidrs(white_ips) if iputils.ip_in_cidrs(ngx.var.remote_addr, whitelist) then allow = true end -- 過濾URL if not allow then local url = ngx.var.http_host .. ngx.var.uri local white_urls = red:smembers('white:dev:url') forindex, white_url in ipairs(white_urls) do if url:match(white_url) then allow = true break end end end -- 默認策略 if not allow then ngx.log(ngx.ERR, "not allow: " .. ngx.var.http_host .. ngx.var.uri) ngx.status = ngx.HTTP_FORBIDDEN ngx.say('請申請白名單') ngx.exit(200) end

3.此腳本僅供參考使用,特殊場景需要進行修改lua腳本

網(wǎng)站題目:開發(fā)環(huán)境下如何進行安全加固呢
文章路徑:http://www.muchs.cn/news27/202677.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、網(wǎng)站維護、靜態(tài)網(wǎng)站、動態(tài)網(wǎng)站、全網(wǎng)營銷推廣域名注冊

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化