1.
概述与前置条件
(1)阿里
云WAF3.0部署适用于绑定到域名的Web应用防护,支持与CDN、负载均衡、源站联动。
(2)前置条件:已开通WAF实例、已将域名解析到WAF CNAME 或 已在 CDN 加入WAF。
(3)需要阿里云日志服务(SLS)用于日志订阅与存储,至少创建一个Project和一个Logstore。
(4)准备好源站信息:示例源站IP 203.0.113.10、端口 80/443,证书已上传到SSL证书服务。
(5)建议先在测试域名上做策略回溯(Observe)7天以评估命中率和误报。
2.
在控制台创建自定义防护策略的步骤
(1)登录阿里云控制台 -> Web应用防火墙(WAF)3.0。
(2)进入“防护策略”->“自定义规则”->点击“新建规则”。
(3)填写规则名称(如 block-sql-injection)、优先级(数值越小优先级越高,示例:100)。
(4)配置匹配条件:URI 包含 /api,参数名为 id,检测关键字为 (union|select) 等正则;选择匹配方式(正则/关键字)。
(5)设置处理动作(拦截、告警、观察、验证码),建议先观察 48 小时再切换到拦截。保存并发布策略。
3.
自定义策略参数示例与优先级展示
(1)示例策略参数:名称=block-sqli, 优先级=100, 条件=ARGS.body 匹配正则 /(?i:(union|select)\s+)/。
(2)动作示例:BLOCK, 响应码=403, 自定义返回页面:/waf/blocked.html。
(3)策略适用域名:example.com(与 CDN 或 WAF 实例绑定)。
(4)规则生效时间与回溯观察期:建议先 Observe 48-168 小时。
(5)下表为示例规则统计(近24小时命中)展示:
4.
日志订阅(SLS)配置与样例数据
(1)在WAF控制台找到“日志订阅”-> 选择“新建订阅”-> 选择目标为“日志服务SLS”。
(2)填写订阅名称:waf-sls-prod,选择日志类型:访问日志/攻击日志/拦截日志。
(3)选择目标Project(如 waf-project)与Logstore(如 waf-access-log)。
(4)示例SLS Logstore 配置:Project=waf-project,Logstore=waf-access-log,保存并测试推送。
(5)示例日志行(JSON):{"time":1622505600,"clientIp":"198.51.100.23","host":"example.com","uri":"/login","ruleId":"1001","action":"BLOCK"},便于SIEM或ELK入库分析。
5.
真实案例:WAF+CDN+源站联动的配置示例
(1)案例背景:电商站点 example.com 峰值 QPS=2,500,遭遇 SQLi 与刷流量攻击。
(2)部署方案:域名走 CDN(阿里云CDN)并在 CDN 后接入 WAF3.0;源站为 ECS 集群:10.0.2.5/10.0.2.6,负载均衡 10.0.2.7。
(3)Nginx 源站配置示例(关键行):proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $host;。
(4)WAF策略:高频 IP 加入速率限制规则(限速 100 次/分钟),对命中 SQL 注入的 IP 直接 BLOCK。
(5)效果:部署后7天内 SQLi 命中次数从平均每天 5,000 次下降至 120 次,误报率 <0.3%。
6.
通过API与自动化配置示例
(1)可以通过阿里云SDK或OpenAPI管理自定义策略与订阅,推荐使用RAM角色绑定API权限。
(2)示例API调用(伪示例):POST /waf/2018-07-01/customRule Create,body 包含 ruleName/priority/matchConditions/action。
(3)Terraform 示例资源块(伪代码):resource "alicloud_waf_rule" "sqli" { name="block-sqli" priority=100 action="block" }。
(4)自动化好处:可在CI中校验规则语法、快速回滚与批量下发。
(5)注意设置好 API 调用频率上限与重试策略,避免因频繁更新导致控制台限流。
7.
排查与优化建议
(1)监控命中率与误报率:命中率过低或过高都需调整规则条件。
(2)建立白名单:对内网/爬虫/搜索引擎IP做白名单,示例白名单 IP 段 203.0.113.0/24。
(3)使用日志样本回溯:导出 SLS 日志到 OSS 或 SIEM 做深度分析。
(4)DDoS 协同防护:对大流量攻击结合阿里云 DDoS 高防与 CDN 边缘清洗,降低源站压力。
(5)定期复审:每月审核策略,依据业务流量(峰值 QPS、95%响应时间)调整限速阈值。
来源:详解阿里云WAF3.0怎么配置自定义防护策略与日志订阅方法