更新时间:2024-06-07 GMT+08:00

网站接入概述

如果要使用Web应用防火墙(Web Application Firewall,WAF)防护您的Web业务,您必须先将Web业务接入WAF。WAF支持云模式-CNAME接入、云模式-ELB接入和独享模式三种接入方式,您可以根据Web业务的部署特征,选择合适的接入方式。本文通过实现原理、推荐场景、接入对象和接入方式的对比进行介绍。

使用场景

根据不同模式的使用场景、防护对象选择网站接入方式。

约束限制

WAF不同接入模式的约束限制如下。

使用云模式-CNAME接入方式将网站接入WAF防护时,有如下限制:

限制项

限制条件

域名限制

  • WAF支持防护多级别单域名(例如,一级域名example.com,二级域名www.example.com等)和泛域名(例如,*.example.com)。
    须知:

    WAF支持添加“*”的泛域名,域名配置为“*”时,只能防护除80、443端口以外的非标端口。

    泛域名添加说明如下:
    • 如果各子域名对应的服务器IP地址相同:输入防护的泛域名。例如:子域名a.example.com,b.example.com和c.example.com对应的服务器IP地址相同,可以直接添加泛域名*.example.com。
    • 如果各子域名对应的服务器IP地址不相同:请将子域名按“单域名”方式逐条添加。
  • 同一防护域名不能重复添加到WAF云模式。

    同一个域名对应不同非标准端口视为不同的防护对象,例如www.example.com:8080和www.example.com:8081为两个不同的防护对象,且占用两个域名防护配额。如果您需要防护同一域名的多个端口,您需要将该域名和端口逐一添加到WAF。

  • 请确保域名经过ICP备案,WAF会检查域名备案情况,未备案域名将无法添加。

服务版本限制

  • 仅专业版和铂金版支持IPv6防护、HTTP2协议、负载均衡算法。
  • 标准版“策略配置”只能选择“系统自动生成策略”。

证书限制

  • WAF当前仅支持PEM格式证书。
  • 目前华为云SCM证书只能推送到“default”企业项目下。如果您使用其他企业项目,则不能选择使用SCM推送的SSL证书。
  • 拥有“SCM Administrator”“SCM FullAccess”权限的账号才能选择SCM证书。

WebSocket协议限制

WAF支持WebSocket协议,且默认为开启状态。
  • “对外协议”选择“HTTP”时,默认支持WebSocket
  • “对外协议”选择“HTTPS”时,默认支持WebSockets

HTTP2协议限制

HTTP2协议仅适用于客户端到WAF之间的访问,且“对外协议”必须包含HTTPS才支持使用。

  • “服务器配置”中至少有一条源站地址的“对外协议”配置为HTTPS,开启后才会生效。
  • 当客户端最大支持TLS 1.2时,HTTP2才生效。

规格限制

将网站接入WAF后,网站的文件上传请求限制为10G。

使用云模式-ELB接入方式将网站接入WAF防护时,有如下限制:

  • 仅支持与独享型ELB配套使用,且“规格”必须为“应用型(HTTP/HTTPS)”,不支持“网络型(TCP/UDP)”的独享型的ELB。
  • “策略配置”:只有专业版和铂金版支持选择自定义的防护策略。

使用独享模式将网站接入WAF防护时,有如下限制:

限制项

限制条件

ELB限制

准备以独享模式接入WAF的网站已经使用独享型ELB(Elastic Load Balance)作为负载均衡。有关ELB类型的详细介绍,请参见共享型弹性负载均衡与独享型负载均衡的功能区别
说明:

2023年4月之前的独享引擎版本,不支持与独享ELB网络型配合使用。因此,如果您使用了独享ELB网络型(TCP/UDP)负载均衡,请确认独享WAF实例已升级到最新版本(2023年4月及之后的版本),独享引擎版本详情请参见独享引擎版本迭代

域名限制

  • WAF支持防护多级别单域名(例如,一级域名example.com,二级域名www.example.com等)和泛域名(例如,*.example.com)。
    须知:

    WAF支持添加“*”的泛域名,域名配置为“*”时,只能防护除80、443端口以外的非标端口。

    泛域名添加说明如下:
    • 如果各子域名对应的服务器IP地址相同:输入防护的泛域名。例如:子域名a.example.com,b.example.com和c.example.com对应的服务器IP地址相同,可以直接添加泛域名*.example.com。
    • 如果各子域名对应的服务器IP地址不相同:请将子域名按“单域名”方式逐条添加。
  • 同一防护域名不能重复添加到WAF。

    同一个域名对应不同非标准端口视为不同的防护对象,例如www.example.com:8080和www.example.com:8081为两个不同的防护对象,且占用两个域名防护配额。如果您需要防护同一域名的多个端口,您需要将该域名和端口逐一添加到WAF。

代理限制

如果WAF前有使用CDN、云加速等七层代理服务器,“是否已使用代理”务必选择“七层代理”,选择“七层代理”后,WAF将从配置的Header头中字段中获取用户真实访问IP,详见配置攻击惩罚的流量标识

证书限制

  • WAF当前仅支持PEM格式证书。
  • 目前华为云SCM证书只能推送到“default”企业项目下。如果您使用其他企业项目,则不能选择使用SCM推送的SSL证书。
  • 拥有“SCM Administrator”“SCM FullAccess”权限的账号才能选择SCM证书。

WebSocket协议限制

WAF支持WebSocket协议,且默认为开启状态。
  • “对外协议”选择“HTTP”时,默认支持WebSocket
  • “对外协议”选择“HTTPS”时,默认支持WebSockets

网站接入流程

WAF不同接入模式的网站接入流程如下。

以云模式CNAME接入方式接入网站时,您可以参照图1所示的配置流程,快速使用WAF。

图1 网站接入WAF的操作流程图-云模式(CNAME接入)
表1 域名接入WAF操作流程说明

操作步骤

说明

添加防护域名

配置域名、协议、源站等相关信息。

WAF回源IP加白

如果您的源站服务器安装了其他安全软件或防火墙,建议您配置只允许来自WAF的访问请求访问您的源站,这样既可保证访问不受影响,又能防止源站IP暴露后被黑客直接攻击。

本地验证

添加域名后,为了确保WAF转发正常,建议您先通过本地验证确保一切配置正常,然后再修改DNS解析。

修改域名DNS解析设置

  • 域名在接入WAF前未使用代理

    到该域名的DNS服务商处,配置防护域名的别名解析。

  • 域名在接入WAF前使用代理(DDoS高防、CDN等)

    将使用的代理类服务(DDoS高防、CDN等)的回源地址修改为的目标域名的“CNAME”值。

一站式将网站接入WAF即可,具体操作请参见将网站接入WAF防护(云模式-ELB接入)

以WAF独享模式接入网站时,您可以参照图2所示的配置流程,快速使用WAF。

图2 网站接入WAF的操作流程图-独享模式

系统影响

如果配置了非标准端口,访问网站时,需要在网址后面增加非标准端口进行访问,否则访问网站时会出现404错误

接入失败处理

如果域名接入失败,即域名接入状态为“未接入”,请参考域名接入状态显示“未接入”,如何处理?排查处理。