AWS Firewall Manager WAF规则如何拦截无域名的IP直访请求
AWS WAF 拦截IP直接访问规则配置方案
核心逻辑:你业务的所有合法请求Host头均为*.example.com后缀,直接访问IP的请求Host头会携带服务器IP3.6.8.8,因此通过Host头校验即可拦截所有此类异常请求,同时还能覆盖恶意域名解析到你服务器IP的场景。
配置步骤
- 进入AWS WAF控制台,打开当前使用的Web ACL配置页
- 切换到「规则」标签,点击「添加规则」→「添加我自己的规则和规则组」
- 规则类型选择「常规规则」,自定义规则名称如
Block-Direct-IP-Access,规则动作选择「阻止」 - 匹配逻辑选择「AND」,按以下参数配置匹配条件:
- 检查对象:
HTTP头部 - 头部字段名:
Host - 匹配类型:
不匹配正则表达式 - 正则表达式内容:
^[a-zA-Z0-9-_.]+\.example\.com$
- 检查对象:
- 规则配置完成后保存,将该规则拖动到Web ACL规则列表的最顶部,确保优先级高于其他放行规则
测试验证
- 规则上线初期先选择「计数」模式运行1-2小时,通过WAF日志核对命中规则的请求是否都是异常的IP直接访问请求,确认没有误拦截正常业务请求
- 验证无误后将规则动作切换为「阻止」,所有直接访问IP的请求都会被WAF直接拦截,不会抵达后端Web服务器
补充说明:该规则会拦截所有Host头不符合
*.example.com格式的请求,你给出的几个路径异常的IP访问请求都会被该规则完全拦截。如果后续需要新增其他合法业务域名,只需要调整正则表达式添加对应域名规则即可。
内容的提问来源于stack exchange,提问作者mahen3d
相关产品推荐
相关产品推荐

