网站接入概述
如果要使用WAF防护您的Web业务,必须先将Web业务接入WAF。WAF支持云模式-CNAME接入、云模式-ELB接入和独享模式接入,您可根据Web业务的部署特征,选择合适的接入方式。
介绍视频
接入说明
云模式-CNAME接入、云模式-ELB接入和独享模式接入说明如下所示。
- 实现原理
网站接入WAF后,网站流量会被ELB镜像给WAF。WAF检测后,将结果同步给ELB,由ELB根据WAF的检测结果决定是否将客户端请求转发到源站。
该过程中,WAF不参与流量转发,避免因额外引入一层转发而带来各种兼容性和稳定性问题。
- 适用业务场景
业务服务器部署在华为云的大型企业网站,对业务稳定性有较高要求的安全防护需求。
- 防护对象
域名、公网IP、私网IP
- 实现原理
独享模式接入通过DNS解析,将防护域名的DNS解析指向绑定到独享引擎配置的负载均衡上的弹性公网IP实例,使域名的Web业务引流到WAF。WAF检测过滤恶意攻击流量后,通过独享引擎的回源IP/IP段将正常流量返回给源站服务器。
该过程中,WAF作为反向代理集群,同时参与流量的转发和检测防护。
- 适用业务场景
业务服务器部署在华为云的大型企业网站,具备较大的业务规模且基于业务特性具有制定个性化防护规则的安全需求。
- 防护对象
域名、公网IP、私网IP
接入方式选型指导
选择接入方式时,建议从业务架构、端口需求、功能需求、性能要求和成本等维度进行综合评估。您可以参考图1、表1进行判断。
| 对比维度 | 云模式-CNAME接入 | 云模式-ELB接入 | 独享模式接入 |
|---|---|---|---|
| 流量转发方式 | 反向代理(WAF参与转发) | 旁路镜像检测(WAF不参与转发) | 反向代理(WAF参与转发) |
| 源站部署位置 | 华为云/非华为云/本地 | 仅华为云 | 仅华为云 |
| 防护对象 | 域名 | 域名、公网IP、私网IP | 域名、公网IP、私网IP |
| 非标端口防护 | 支持WAF支持的端口范围 | 依赖ELB监听器端口 | 支持WAF支持的端口范围,可配合7层ELB防护任意端口 |
| 业务稳定性影响 | 低(额外引入一层转发) | 最低(不改变流量转发路径) | 低(额外引入一层转发) |
| 高级防护功能 | 全部支持 | 部分不支持(详见功能限制) | 大部分支持(不支持BOT管理、大模型检测,详见功能限制) |
| 资源隔离性 | 共享WAF集群 | 共享WAF集群 | 独享WAF引擎实例 |
| 成本 | 按版本规格付费 | 按版本规格付费 | 按独享引擎规格付费 + ELB费用 |
| 适用场景 | 通用场景,源站不在华为云 | 华为云大型网站,对稳定性要求极高 | 华为云大型网站,需要资源隔离和个性化防护 |
约束限制
WAF不同接入方式的约束限制如下。
| 限制项 | 云模式-CNAME接入 | 云模式-ELB接入 | 独享模式接入 |
|---|---|---|---|
| 域名限制 | 不涉及 | ||
| ELB限制 | -- | 仅支持与独享型ELB配套使用,且“规格”必须为“应用型(HTTP/HTTPS)”,不支持“网络型(TCP/UDP)”的独享型的ELB。 | 仅支持与独享型ELB配套使用。有关ELB类型的详细介绍,请参见共享型弹性负载均衡与独享型负载均衡的功能区别。 说明: 2023年4月之前的独享引擎版本,不支持与独享ELB网络型配合使用。因此,如果您使用了独享ELB网络型(TCP/UDP)负载均衡,请确认独享WAF实例已升级到最新版本(2023年4月及之后的版本),独享引擎版本详情请参见独享引擎版本迭代。 |
| 服务版本相关限制 |
| 仅标准版、专业版或企业版,支持使用ELB接入。 | -- |
| 证书限制 |
| -- |
|
| 协议限制 |
| -- | WAF支持WebSocket协议,且默认为开启状态。 仅在流量转发时,支持WebSocket协议。流量检测时,不支持。 |
| 防护策略限制 | 一个防护域名只能绑定一条防护策略。 |
|
|
| 规格限制 | 将网站接入WAF后,网站的文件上传请求限制为1G。 | 将网站接入WAF后,网站的文件上传请求限制为1G。 | 将网站接入WAF后,网站的文件上传请求限制为1G。 |
由于网站接入WAF的方式不同,可使用的进阶功能配置也不相同。
| 功能 | 云模式-CNAME接入 | 云模式-ELB接入 | 独享模式接入 |
|---|---|---|---|
| 支持 | 不支持。可在ELB控制台配置TLS安全策略实现加密通信。 | 支持 | |
| 专业版、企业版支持 | 不支持。ELB接入为旁路检测架构,WAF仅做旁路检测,无法还原会话,无法和客户端协商HTTP2。因此,不支持该功能。 | 支持 2023年05月及之后版本的独享引擎,全局开启HTTP2协议,无需手动设置。 | |
| 需提交工单申请开通 | |||
| 支持 | 不支持。ELB接入为旁路检测架构,真实报文全程在ELB与源站之间传输,WAF只有只读镜像副本,无权限修改原始流量,无法插入、 删除头部。 | 支持 | |
| 支持 | 支持自定义页面模板,不支持重定向页面模板。 | 支持 | |
| 支持 | 支持 | 支持 | |
| 专业版、企业版支持 | 云模式-ELB接入、独享模式是否支持IPv6防护,依赖独享模式、云模式-ELB接入所在的ELB。如果该ELB支持IPv6,则独享模式、云模式-ELB接入也支持IPv6。 | ||
| 支持 | 不支持。ELB接入源站调度主体是ELB,WAF不参与回源转发,内置的源站负载均衡模块无法生效。该场景下,需通过ELB自身负载均衡功能实现多源站分配。 | 支持 | |
| 支持 | 不支持。Cookie写入在响应报文内,ELB接入下,WAF不能改写源站返回的原始响应包,无法追加Cookie安全标识。 | 支持 | |
| 需提交工单申请开通 | |||
| 需提交工单申请开通 | 不支持。Trace ID需要WAF主动向请求头注入唯一标识。ELB接入为旁路模式,无报文修改能力,无法注入追踪ID。 | 需提交工单申请开通 | |
| 支持 | 支持 | 支持 | |
| 不支持 | 不支持。ELB接入源站调度主体是ELB,WAF不参与回源转发,内置的源站负载均衡模块无法生效。该场景下,需通过ELB自身负载均衡功能实现多源站分配。 | 支持 | |
| 标准版、专业版、企业版支持 | 不支持。ELB接入时, 超时时间由ELB监听器和源站控制,WAF不持有客户端TCP连接,无法独立设置、管控连接超时阈值。 | 支持 | |
| 默认支持,不支持手动关闭、修改 | 不支持。ELB接入为旁路模式,WAF无法阻断主链路流量、不能下发自定义响应,无法实现熔断逻辑。 | 支持手动开启、关闭、修改 | |
| 支持 | 不支持。ELB接入模式链路无法做Trace透传,所以不支持该功能。 | 支持 | |
| 仅企业版支持,需提交工单申请开通 | 不支持 | 不支持 | |
由于网站接入WAF的方式不同,可使用的防护规则也不相同。
| 功能 | 云模式-CNAME接入 | 云模式-ELB接入 | 独享模式接入 |
|---|---|---|---|
| 支持 | 支持 | 支持 | |
| 支持 | 支持 | 支持 | |
| 不支持 | 不支持 | |
| 标准版、专业版、企业版支持 | 标准版、专业版、企业版支持 | 支持 | |
| 标准版、专业版、企业版支持 |
| 支持 | |
| 标准版、专业版、企业版支持 |
| 支持 | |
| 专业版、企业版支持 | 不支持 | 2022年9月及之后版本的独享引擎支持 | |
| 标准版、专业版、企业版支持 | 不支持 | 支持 | |
| 不支持 | 支持 | |
| 专业版、企业版支持 | 不支持 | 支持 | |
| 支持 | 支持 | 支持 | |
| 标准版、专业版、企业版支持 | 标准版、专业版、企业版支持 | 支持 | |
| 专业版、企业版支持 | 不支持 | 支持 | |
| 提交工单申请开通 | 不支持 | 不支持 | |
| 标准版、专业版、企业版支持 | 不支持 | 不支持 | |
| 标准版、专业版、企业版支持 | 标准版、专业版、企业版支持 | 支持 | |
| 支持 | 支持 | 支持 |

