基于IP地址或地理位置配置访问控制策略
方案概述
面向对外Web业务、API服务、全球站点,需要基于IP网段、国家/地区做精细化访问准入控制,同时抵御Web攻击、恶意IP探测、后台路径非法访问等风险。同时,针对不同区域内网关流量、全球CDN加速流量,需要部署统一的安全规则,进行独立防护,实现分层防护、统一安全基线。
针对以上安全需求,华为云WAF构建访问准入和攻击防御的纵深安全体系,以黑白名单、地理位置访问控制作为第一道访问屏障,叠加威胁情报访问控制、精准访问控制(基于路径拦截)、Web基础防护能力,全面抵御各类公网安全风险。
按照流量类型拆分区域防护策略、全球CDN防护策略,适配不同业务部署形态,可广泛应用于政企官网、对外 API 服务、全球站点等对公网访问有严格管控要求的业务。
资源准备
- 已开通华为云云模式WAF(专业版及以上版本)、弹性负载均衡ELB(应用型)、API网关APIG、内容分发网络CDN服务,并拥有WAF、ELB、APIG、CDN、域名解析、云日志相关管理操作权限。
- 部署在中国大陆的源站服务器,已完成ICP(Internet Content Provider)备案。
- 已梳理可信IP/IP段、允许访问的国家/地区清单、需拦截的管理类路径。
- HTTPS业务已提前准备合法SSL证书。
操作步骤
参考以下步骤,配置基于IP地址、地理位置的访问控制规则。
步骤一:全局基础数据配置
- 创建IP地址组
IP地址组支持多防护策略复用,后续IP变更仅需维护地址组,无需逐条修改规则。
- 登录Web应用防火墙控制台。
- 在左侧导航栏,选择。
- 在“我的地址组”页签,单击“添加地址组”。
- 在“添加地址组”面板,添加已梳理的可信IP/IP段。 图1 添加地址组
- 梳理管控清单
- 确定业务允许访问的国家、地区范围。
- 整理需拦截的管理类路径,例如“/admin”、“/manage”、“/backend”等。
步骤二:创建防护策略
分别创建区域防护策略、全球防护策略,两套策略的规则配置完全一致,仅后续绑定资源不同。可先创建区域防护策略,完成后,复制一个防护策略作为全球防护策略。
按照规则执行优先级由高至低创建,关键配置如下:
- 配置黑白名单规则 图2 配置黑白名单规则
关键参数说明:- IP/IP段或地址组:地址组,选择步骤一:全局基础数据配置创建的地址组。
- 防护动作:仅记录,表示请求命中防护规则后,不采取任何行动,只是将这些活动记录下来。
不建议配置为放行。放行时,WAF会直接放行当前请求,并停止后续规则的检测。
详细配置说明,请参见配置IP黑白名单规则拦截/放行指定IP。
- 配置地理位置访问控制规则 图3 配置地理位置访问控制规则
关键参数说明:- 地理位置:选择除允许访问地域外的其他地域。
- 防护动作:拦截。配置为拦截后,未选择地域的请求,将被放行。
不建议配置为放行。放行时,WAF会直接放行当前请求,并停止后续规则的检测。
详细配置说明,请参见配置地理位置访问控制规则拦截/放行特定区域请求。
- 配置威胁情报访问控制规则 图4 配置威胁情报访问控制规则
关键参数说明:- 信誉类型:IDC数据中心,选择除允许访问的信誉库外的其他信誉库。
- 防护动作:拦截。配置为拦截后,未选择信誉库的请求,将被放行。
不建议配置为放行。放行时,WAF会直接放行当前请求,并停止后续规则的检测。
详细配置说明,请参见配置威胁情报访问控制规则拦截/放行指定IP库的IP。
- 配置精准访问防护规则(拦截管理路径) 图5 配置精准访问防护规则(拦截管理路径)
关键参数说明:- 条件列表:
- 字段:路径
- 逻辑:包含
- 内容:/admin
- 防护动作:仅记录
建议配置初期,选择防护动作为仅记录。运行一段时间后,如果没有发现任何正常业务流量被拦截的记录,则可以将防护动作切换为拦截。配置为拦截后,访问包含“/admin”的路径时,请求将被直接拦截。
详细配置说明,请参见配置精准访问防护规则定制化防护策略。
- 条件列表:
- 配置Web基础防护规则 图6 配置Web基础防护规则
关键参数说明:- 开启常规检测、深度检测、header全检测、Shiro解密检测、Webshell检测
- 防护等级:默认规则集【宽松】
- 防护动作:仅记录
建议配置初期,选择防护等级为默认规则集【宽松】,防护动作为仅记录。运行一段时间后,根据实际业务调整防护等级。如果没有发现任何正常业务流量被拦截的记录,则可以将防护动作切换为拦截。
详细配置说明,请参见配置Web基础防护规则防御常见Web攻击。
步骤三:绑定资源
参考如下步骤,将创建的策略绑定到对应资源。
适用于区域内业务、内部服务、专属API接口,统一绑定区域防护策略。
- 方式1:对接弹性负载均衡ELB(应用型) 通过云模式-ELB接入,将弹性负载均衡ELB接入WAF。具体操作,请参见通过“云模式-ELB接入”将网站接入WAF。图7 云模式-ELB接入
关键参数说明:- ELB(负载均衡器):要接入WAF防护的弹性负载均衡ELB器。
- ELB监听器:根据实际业务选择所有监听器或指定监听器。
- 防护域名:填写要防护的域名,*表示匹配所有域名,防护经过该ELB的所有域名流量。
- 策略配置:选择步骤二:创建防护策略创建的区域防护策略。
- 方式2:对接API网关APIG
- 通过云模式-CNAME接入,将API网关APIG接入WAF。具体操作,请参见通过“云模式-CNAME接入”将网站接入WAF。 图8 云模式-CNAME接入
关键参数说明:- 防护域名:填写API对外域名。
- 防护端口:填写要防护的端口。
- 服务器配置:
- 对外协议:HTTPS。
- 源站协议:HTTPS。
- 源站地址:APIG分组调试地址。
- 源站端口:WAF访问服务器的业务端口。
- 国际证书:选择网站关联的证书。
- 策略配置:选择步骤二:创建防护策略创建的区域防护策略。
- 域名解析:将API域名的CNAME指向WAF CNAME地址。
- 放行回源IP:APIG访问控制策略仅放行WAF回源IP。
- 通过云模式-CNAME接入,将API网关APIG接入WAF。具体操作,请参见通过“云模式-CNAME接入”将网站接入WAF。
适用于面向全球访问的官网、公网业务站点,统一绑定全球防护策略。
- 联合部署WAF、CDN。具体操作,请参见使用CDN和WAF提升网站防护能力和访问速度。
- WAF侧 图9 云模式-CNAME接入
关键参数说明:- 防护域名:填写对外业务域名。
- 防护端口:填写要防护的端口。
- 服务器配置:
- 对外协议:HTTPS。
- 源站协议:HTTPS。
- 源站地址:业务真实源站IP。
- 源站端口:WAF访问服务器的业务端口。
- 国际证书:选择网站关联的证书。
- 策略配置:选择步骤二:创建防护策略创建的全球防护策略。
- CDN侧 图10 添加域名
关键参数说明:- 加速域名:需要加速的域名。
- 源站:
- 源站类型:源站域名。
- 源站地址:WAF CNAME地址。
- WAF侧
- 放行回源IP:业务真实源站安全组仅放行WAF回源IP段。
步骤四:日常运维
生产环境配置建议
- 严格管控回源权限:ELB、APIG、业务源站、CDN 源站的安全组、访问控制策略,仅放行WAF官方回源IP段,杜绝业务后端被公网直接访问,防止绕过WAF防护。
- 统一证书管理:HTTPS域名证书统一在WAF侧配置,后端资源、CDN不再重复配置,简化证书运维与更新流程。
- 策略独立管理:区域、全球两套防护策略分开创建,支持差异化调整,例如全球流量可按需收紧地域访问范围。
- 灰度上线原则:新接入域名、新增防护规则,必须先以仅记录模式运行24~48小时,确认无误拦截后,再切换为阻断模式。
- 误拦截处理:若出现正常访问被拦截,从防护日志提取对应IP或地区,补充至IP白名单、地域允许列表中。