文档首页> 内容分发网络 CDN> 最佳实践> CDN加速WAF防护资源
更新时间:2024-04-03 GMT+08:00

CDN加速WAF防护资源

前提条件

背景信息

CDN是构建在现有互联网基础之上的一层智能虚拟网络,通过在网络各处部署节点服务器,实现将源站内容分发至所有CDN节点,使用户可以就近获得所需的内容,所以接入CDN的网站都能有比较快的响应速度。

Web应用防火墙(WAF:Web Application Firewall),通过对HTTP(S)请求进行检测,识别并阻断SQL注入、跨站脚本攻击、网页木马上传、命令/代码注入、文件包含、敏感文件访问、第三方应用漏洞攻击、CC攻击、恶意爬虫扫描、跨站请求伪造等攻击,保护Web服务安全稳定。

如果您的网站对安全性能要求比较高,同时又有加速的需求,可以使用华为云CDN联动WAF配置,实现加速的同时防护Web攻击。

CDN+WAF的配置原理

CDN+WAF联动的业务流向为:CDN>WAF>源站,流量由CDN转发到WAF,WAF再将流量转到源站,实现网站加速、流量检测和攻击拦截。

配置场景

本文配置以您的WAF在华为云为例,为您介绍开通CDN+WAF联动部署。如果您的WAF在其它云服务,请参考本文完成配置。

场景1:已购买WAF并添加防护域名,配置CDN+WAF联动

如果您已经将域名接入WAF防御,要配置CDN+WAF联动,您需要先将WAF域名基本信息中的“是否已使用代理”修改为“是”,WAF才能够针对真实源IP进行安全策略防御;然后在CDN侧添加加速域名,将WAF的CNAME作为CDN的源站,CDN才能将流量转发给WAF,实现加速和Web攻击防御联动。

使用限制:

  • CDN的加速域名仅支持默认端口,以非标端口的方式接入WAF的防护域名将无法接入CDN。
  • 如果您在WAF侧为防护域名配置了HTTPS证书,请同步在CDN侧完成证书配置,否则会导致域名无法访问。

操作步骤

  1. 根据修改WAF防护域名基本信息指导修改防护域名的代理设置。
    • 是否已使用代理:是

  1. 复制WAF的CNAME。
  2. 在CDN侧添加加速域名(即WAF的防护域名)
    1. 登录华为云控制台,在控制台首页中选择“CDN与智能边缘 > 内容分发网络 CDN”,进入CDN控制台。
    2. 在左侧导航栏选择域名管理,进入域名管理页面。
    3. 在域名管理界面,单击“添加域名”,配置域名参数。
      • 添加源站时,“源站类型”选择“源站域名”“源站地址”输入WAF的CNAME域名。

    4. 单击“确定”完成域名的添加,CDN会为加速域名生成专属CNAME。
  3. (可选)添加加速域名后,为保证顺利切换不影响业务,建议先做测试再切换DNS解析,请参考本地测试加速域名
  4. 在DNS域名服务商处修改解析记录,配置CDN提供的CNAME,详情请参见配置CNAME
  5. 验证CNAME是否生效。

    打开Windows操作系统中的cmd程序,输入如下指令:

    nslookup -qt=cname 加速域名

    如果回显CNAME,则表示CNAME配置已经生效,如下图:

    如果您暂未使用CDN和WAF,也建议您按照场景1的方式先接入WAF,再配置联动。

场景2:加速域名已经接入CDN加速,配置CDN+WAF联动

如果您的域名已经接入CDN加速,现在需要配置CDN+WAF联动,您需要先在WAF添加防护域名,“是否已使用代理”选项选择“是”,WAF才能够针对真实源IP进行安全防御;然后将CDN侧加速域名的源站修改WAF的CNAME,CDN才能将流量转发给WAF,实现加速和Web攻击防御联动。

使用限制:

如果您在CDN侧为加速域名配置了HTTPS证书,请同步在WAF侧完成证书配置,否则会导致域名无法访问。

操作步骤

  1. 将网站信息(源站服务器的IP、端口等信息)添加到WAF。配置要点如下。
    • 防护域名端口:标准端口。
    • 是否已使用代理:七层代理。
  2. 配置完成后,WAF会为该域名生成一个专属的CNAME。

    建议您在配置好WAF后先验证业务是否正常,再修改CDN源站。

  3. 将CDN加速域名的源站地址修改为WAF的CNAME域名。
    1. 登录华为云控制台,在控制台首页中选择“CDN与智能边缘 > 内容分发网络 CDN”,进入CDN控制台。
    2. 在左侧菜单栏中,选择域名管理
    3. 在域名列表中,单击需要修改的域名或域名所在行的“设置”,进入域名配置页面。
    4. 选择“基本配置”页签。
    5. 在源站配置模块,单击“编辑”,将源站修改为如下配置:
      • 源站类型:源站域名。
      • 源站地址:填写WAF生成的CNAME域名。
      • 回源端口:默认端口。

    完成以上配置后,流量经过CDN转发到WAF,达到加速和Web攻击防护的目的。