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再将流量转到源站,实现网站加速、流量检测和攻击拦截。

方案优势
CDN和WAF同时部署,缩短用户查看内容的访问延迟,提高了用户访问网站的响应速度与网站的可用性,解决了网络带宽小、用户访问量大、网点分布不均等问题,同时可以防御Web应用攻击(SQL注入、跨站脚本攻击、网页木马上传、命令/代码注入、文件包含、敏感文件访问、第三方应用漏洞攻击、CC攻击、恶意爬虫扫描、跨站请求伪造等),确保业务持续可靠运行。
资源与成本规划
实践所需资源请见下表。
实施步骤
- 购买WAF云模式标准版
    - 登录华为云管理控制台。
- 在控制台页面中选择,进入Web应用防火墙控制台。
- 在页面右上角,单击“购买WAF实例”,进入购买页面,“WAF模式”选择“云模式”。
      - “区域”:根据防护业务的所在区域就近选择购买的WAF区域。
- “版本规格”:选择“标准版”。
- “扩展包”及“购买时长”:根据具体情况进行选择。
 
- 确认参数配置无误后,在页面右下角单击“立即购买”。
- 确认订单详情无误后,阅读并勾选《Web应用防火墙免责声明》,单击“去支付”,完成购买操作。
- 进入“付款”页面,选择付款方式进行付款。
 
- 将网站信息添加到WAF
    - 在左侧导航树中,选择“网站设置”,进入网站设置列表。
- 在网站列表的左上角,单击“添加防护网站”。
- 选择“云模式-CNAME接入”并单击“开始配置”。
      - 云模式-ELB接入方式请参见将网站接入WAF防护(云模式-ELB接入)。
 
- 根据界面提示,配置网站信息,如表1所示。
      图1 基础信息配置  表1 重点参数说明 参数 参数说明 取值样例 防护域名 需要添加到WAF中防护的域名。 - 域名已完成备案
- 支持单域名(例如,一级域名example.com,二级域名www.example.com等)和泛域名(例如,*.example.com)。
 www.example.com 防护端口 需要防护的域名对应的业务端口。 标准端口 服务器配置 网站服务器地址的配置。包括对外协议、源站协议、源站地址、源站端口和权重。 - 对外协议:客户端请求访问服务器的协议类型。包括“HTTP”、“HTTPS”两种协议类型。
- 源站协议:Web应用防火墙转发客户端请求的协议类型。包括“HTTP”、“HTTPS”两种协议类型。
- 源站地址:客户端访问的网站服务器的公网IP地址(一般对应该域名在DNS服务商处配置的A记录)或者域名(一般对应该域名在DNS服务商处配置的CNAME)。
- 源站端口:WAF转发客户端请求到服务器的业务端口。
- 权重:负载均衡算法将按权重将请求分配给源站。
 对外协议:HTTP 源站协议:HTTP 源站地址:IPv4 XXX .XXX.1.1 源站端口:80 代理情况 在WAF前使用了其他代理产品。 此处选择“七层代理”。 七层代理   - CDN的加速域名仅支持默认端口,以非标端口的方式接入WAF的防护域名将无法接入CDN。
- 如果您在WAF侧为防护域名配置了HTTPS证书,请同步在CDN侧完成证书配置,否则会导致域名无法访问。
 
- 单击“下一步”,根据界面提示,完成WAF回源IP加白、本地验证的操作。
 
- 复制WAF的CNAME:在域名基本信息页面,单击CNAME所在行的 ,复制“CNAME”。 ,复制“CNAME”。
- 在CDN侧添加加速域名(WAF的防护域名)
    - 登录CDN控制台。
- 在左侧导航栏选择,进入域名管理页面。
- 在域名管理界面,单击“添加域名”,配置域名参数。
      - 添加源站时,“源站类型”选择“源站域名”,“源站地址”输入WAF的CNAME域名。
         
 
- 添加源站时,“源站类型”选择“源站域名”,“源站地址”输入WAF的CNAME域名。
        
- 单击“确定”完成域名的添加,CDN会为加速域名生成专属CNAME。
 
- (可选)添加加速域名后,为保证顺利切换不影响业务,建议先做测试再切换DNS解析,请参考本地测试加速域名。
- 配置CNAME解析
- 验证CNAME是否生效
    打开Windows操作系统中的cmd程序,输入如下指令: nslookup -qt=cname 加速域名 如果回显CNAME,则表示CNAME配置已经生效,如下图:  
完成以上配置后,流量经过CDN转发到WAF,达到加速和Web攻击防护的目的。
 
    