阿里云 Web 应用防火墙(WAF)与公网 IP 之间存在着“流量X_X”与“防护入口”的核心关系。简单来说,WAF 本身不直接提供固定的公网 IP 给您的源站服务器使用,而是通过接管您网站的公网访问流量来实现防护。
以下是两者关系的具体逻辑解析:
1. 流量转发机制(核心原理)
在接入 WAF 之前,用户直接访问您的源站服务器的公网 IP;接入 WAF 后,流量路径发生了改变:
- 用户请求 $rightarrow$ 阿里云 WAF 的 CNAME 域名/IP $rightarrow$ 清洗后的流量 $rightarrow$ 您的源站服务器。
- 关键点:WAF 会分配一组(或多组)高防 IP(即 WAF 的公网 IP)给用户。用户必须将域名的 DNS 解析指向 WAF 提供的 CNAME 地址,从而让所有流量先经过 WAF 的公网 IP 进行安全检测。
2. 对源站公网 IP 的影响
接入 WAF 后,您的源站服务器通常有两种配置模式,这决定了源站公网 IP 的使用方式:
-
模式一:隐藏源站 IP(推荐,最安全)
- 操作:将源站服务器的公网 IP 设置为仅允许 WAF 的回源 IP 段访问(通过安全组或 ACL 限制),并移除源站绑定的弹性公网 IP(EIP)或将其解绑。
- 结果:此时,源站不再直接暴露在公网 IP 下。外界无法直接通过源站 IP 访问网站,只能看到 WAF 的 IP。这能有效防止 DDoS 攻击绕过 WAF 直接打爆源站,也能隐藏源站真实架构。
- 注意:如果源站没有公网 IP,需要确保 WAF 回源时能正常连接源站(通常通过内网或特定的回源 IP 白名单实现)。
-
模式二:保留源站公网 IP(较少用,有暴露风险)
- 操作:源站依然绑定着公网 IP,但通过 DNS 解析将域名指向 WAF。
- 结果:虽然大部分流量走了 WAF,但如果有人知道了您的源站真实公网 IP 并直接发起攻击,流量将绕过 WAF直接到达源站。因此,这种模式下必须在源站的安全组中严格限制只允许 WAF 的回源 IP 段访问源站的 80/443 端口。
3. WAF 公网 IP 的类型
根据您购买的 WAF 版本不同,WAF 侧的公网 IP 表现也不同:
- 共享型 WAF:多个客户共用同一组 WAF 公网 IP。这些 IP 是动态分配的,用户只需关注 DNS 解析到的 CNAME 即可,无需关心具体 IP。
- 独享型 WAF:通常会为您分配专属的 WAF 公网 IP(或者您可以指定自己的 EIP 绑定到独享版实例上),这样您的业务流量拥有独立的出口 IP,便于做更精细的日志审计或白名单控制。
总结
阿里云 WAF 与公网 IP 的关系可以概括为:
- 入口替换:WAF 充当了流量的“守门人”,用户的请求首先到达的是WAF 的公网 IP,而不是源站的公网 IP。
- 源站隐匿:为了达到最佳防护效果,接入 WAF 后,源站的公网 IP 应当被隐藏(通过安全组限制或直接解绑),仅允许 WAF 的回源 IP 段访问。
- DNS 桥梁:两者通过 DNS 解析(CNAME)连接,将域名流量牵引至 WAF 的公网 IP 进行处理。
建议:如果您已经部署了 WAF,请务必检查源站服务器的安全组策略,禁止除 WAF 回源 IP 以外的任何公网 IP 直接访问源站的服务端口,以确保 WAF 的防护有效性。
云小栈