文档首页> Web应用防火墙 WAF> 最佳实践> 网站接入配置> CDN回源OBS桶场景下连接WAF提升OBS安全防护
更新时间:2024-05-20 GMT+08:00
分享

CDN回源OBS桶场景下连接WAF提升OBS安全防护

当您的网站域名开启了华为云CDN加速,且回源到华为云对象存储 OBS(Object Storage Service,OBS)时,如果该网站存在一定的Web攻击风险,我们推荐您组合使用CDN、OBS和Web 应用防火墙 WAF(Web Application Firewall),将开启CDN加速的域名接入WAF,实现OBS的安全防护。本文介绍如何为业务同时部署CDN、OBS、WAF。

前提条件

  • 已将域名添加到CDN用于内容加速,并将请求回源到OBS桶。更多信息,请参见添加CDN加速域名

    此时,域名DNS解析指向CDN的CNAME地址,源站为OBS域名。

  • 购买WAF云模式

约束条件

  • 仅WAF云模式的CNAME接入支持该场景。
  • 该场景下,WAF只能防护网站动态内容、较小的静态资源文件。因此,如果OBS存储的资源为大文件(100M以上),不建议使用云WAF进行防护。

方案架构

华为云CDN可以有效加速网站,WAF可以拦截网站恶意流量,而OBS桶提供海量文件存储。将数据存放在OBS桶中然后通过配置CDN加速,WAF过滤恶意请求,这样构造的业务系统可以在降低成本的同时,提高OBS数据的安全防护。

步骤一:在OBS中绑定CDN加速域名

  1. 登录管理控制台
  2. 单击管理控制台左上角的,选择区域或项目。
  3. 单击页面左上方的,选择存储 > 对象存储服务 OBS
  4. 在左侧导航树中,选择“桶列表”,单击目标桶名称,进入“对象”页面。
  5. 在左侧导航树中,选择“域名管理”,进入“域名管理”界面。
  6. 单击“配置加速域名”,在“源站信息”所在行,复制桶域名。

    “加速域名”:配置为在CDN中配置的加速域名。

    其他参数的详细配置请参见配置加速域名

完成域名绑定后,您可以在浏览器输入域名和OBS桶中任意文件名称(例如,<被防护域名>/test.png,test.png为上传到OBS桶中的图片名称),如果网站能正常访问,表示域名添加成功。

步骤二:将域名接入WAF,源站地址为OBS域名

为了实现WAF对OBS桶的防护,您需要将开启CDN加速且绑定OBS桶的域名接入WAF,并将源站修改为OBS域名。

  1. 单击页面左上方的,选择安全与合规 > Web应用防火墙 WAF
  2. 在左侧导航树中,选择“网站设置”,进入“网站设置”页面。
  3. 在网站列表左上角,单击“添加防护网站”
  4. 选择“云模式-CNAME接入”并单击“确定”
  5. 在添加防护网站页面,关键参数配置如表1
    其他参数的配置请参见添加防护域名(云模式-CNAME接入)
    表1 配置信息

    配置项

    配置说明

    防护域名

    填写步骤一:在OBS中绑定CDN加速域名中,绑定到OBS中的域名。

    防护域名端口

    填写需要防护的域名对应的业务端口。

    服务器配置

    • 对外协议:客户端请求访问服务器的协议类型。包括HTTP、HTTPS两种协议类型。
    • 源站协议:Web应用防火墙转发客户端请求的协议类型。包括HTTP、HTTPS两种协议类型。
    • 源站地址:填写网站对应的源站服务器的公网IP地址或源站域名,用于接收WAF转发回源的正常业务请求(回源请求),此处填写OBS桶域名
      说明:

      在OBS“概览”页的“域名信息”栏,也可复制OBS桶域名。

    • 源站端口:WAF转发客户端请求到服务器的业务端口。
  6. 单击“确认”,按照接入向导完成“放行WAF回源IP”“本地验证”,在“修改DNS解析”页面,复制CNAME值。
    图1 复制CNAME截图

步骤三:修改CDN源站为WAF提供的CNAME地址

  1. 单击页面左上方的,选择CDN与智能边缘 > 内容分发网络 CDN,进入CDN页面。
  2. 在左侧导航树中,选择域名管理
  3. 在域名列表中,单击需要修改的域名或域名所在行的“设置”,进入域名配置页面。
  4. 选择“基本配置”签,在源站配置模块,单击“编辑”

    “源站地址”文本框中输入6中复制的WAF CNAME值。

效果验证

完成配置后,您可以再次在浏览器输入已添加的域名和OBS桶中任意文件名称(例如,<被防护域名>/test.png),test.png为上传到OBS中的图片名称),如果网站能正常访问,表示域名添加成功。

您也可以在浏览器输入已添加的域名和Web攻击代码(例如SQL注入:curl -kv <被防护域名>?name='1%20or%201=1'),如果返回418拦截提示页面,表示攻击被拦截,WAF防护成功。

后续操作

完成上述配置后,WAF会默认为域名开启Web基础防护规则,通过对访问域名的请求特征进行识别和检测,将正常的访问请求转发给OBS私有桶,实现安全防护。您也可以根据实际情况,开启更多的防护策略,详见防护策略配置

分享:

    相关文档

    相关产品