透明接入模式只需将需要防护的网站信息添加到WAF,无需修改域名的DNS解析设置,即可实现WAF防护。如果您的源站服务器为ECS服务器或者部署在阿里云公网SLB上,那么除了使用CNAME接入模式,还可以选择云原生的透明接入模式。本文介绍如何使用透明接入模式接入WAF。
关于CNAME接入和透明接入的更多信息,请参见使用教程。
使用限制
限制项类型 |
描述 |
云服务实例类型 |
透明接入不支持私网SLB和IPv6版本的公网SLB实例。 |
SLB和ECS地域 |
支持位于如下地域的公网SLB实例和ECS实例:西南1(成都)、华北2(北京)、华北3(张家口)、华东1(杭州)、华东2(上海)、华南1(深圳)、中国(香港)、马来西亚(吉隆坡)、印度尼西亚(雅加达)。
- 如果您的公网SLB实例和ECS实例地域位于西南1(成都)、华北2(北京)、华北3(张家口)、华东1(杭州)、华东2(上海)、华南1(深圳),那么对应的WAF实例地域为中国内地。
- 如果您的公网SLB实例和ECS实例地域位于中国(香港)、马来西亚(吉隆坡)、印度尼西亚(雅加达),那么对应的WAF实例地域为非中国内地。
由于历史网络架构的原因,部分公网SLB不支持透明接入。
具体开通咨询,请使用钉钉加入阿里云WAF云原生接入咨询群聊(群号:32208925),联系我们。
|
引流端口配置的数量 |
不同版本的WAF实例支持添加的引流端口配置的数量如下:
- 高级版:不超过20条。
- 企业版:不超过50条。
- 旗舰版:不超过100条。
- 按量计费版本:不超过20条。
透明接入对指定源站服务器的具体端口生效,即您可以针对某个源站服务器(具有公网IP)的具体端口(例如80、443等)开启透明接入。开启透明接入后,该服务器端口的流量被引流到WAF进行防护。
例如,您同时为SLB实例A的80、443端口,及另一个SLB实例B的80、443端口开启透明接入,则共添加了4个引流端口配置(SLB实例A的80端口、SLB实例A的443端口、SLB实例B的80端口、SLB实例B的443端口)。
|
业务同时接入DDoS高防和WAF |
如果您的业务需要同时接入DDoS高防和WAF,则只有在业务通过域名接入(即七层接入模式)接入DDoS高防时,该业务才支持通过透明接入模式接入WAF。
如果业务通过端口接入(即四层接入模式)接入DDoS高防,则该业务暂不支持通过透明接入模式接入WAF。针对这种情况,推荐您使用CNAME接入模式,将该业务接入WAF进行防护。更多信息,请参见网站接入(CNAME接入)。
|
前提条件
- 已开通Web应用防火墙实例。具体操作,请参见开通Web应用防火墙。
- 已创建的云服务实例为IPv4公网的SLB实例,且该SLB实例拥有公网IP,端口未开启双向认证。
说明 如果您使用了私网SLB+EIP,也支持使用透明接入。
- 托管在中国内地服务器上的网站域名,已完成阿里云ICP备案。在阿里云ICP代备案管理系统提交ICP备案订单时,系统会根据您提交的基本信息自动识别本次提交订单的ICP备案类型,自动为您匹配对应备案类型需进行的ICP备案流程。更多信息,请参见ICP备案。
- 透明接入配置端口上使用的证书已按先后顺序完成如下操作:
- 已上传到数字证书管理服务控制台统一管理,或直接从数字证书管理服务控制台购买和申请证书。
- 已在负载均衡SLB控制台为该透明接入配置的端口配置监听时,选择该证书并完成配置。
注意 如果您要接入七层SLB实例上的Web流量,必须满足该前提条件。接入四层SLB实例或ECS源站上Web流量时,无需满足该前提条件。
- 已完成云资源访问授权。具体操作,请参见授权WAF访问云资源。
步骤一:添加域名
您可以通过添加域名的方式,接入WAF。
警告 域名首次透明接入WAF时,可能会导致Web业务出现秒级闪断。该闪断会自动恢复,不会对您的业务造成影响。
- 登录Web应用防火墙控制台,并在顶部菜单栏,选择WAF实例的资源组和地域(中国内地、非中国内地)。
- 在左侧导航栏,选择。
- 在域名列表页签,单击网站接入。
- 在添加域名页面,选择接入模式为透明接入。
- 在添加域名信息模块,配置域名和源站服务端口等。
配置项 |
说明 |
域名 |
填写网站域名。支持使用精确域名(例如,www.aliyundoc.com )和泛域名(例如,*.aliyundoc.com )格式。具体说明如下:
- 使用泛域名后,WAF将自动匹配该泛域名对应的所有子域名(例如,
*.aliyundoc.com 能够匹配www.aliyundoc.com 、test.aliyundoc.com 等)。
注意 泛域名不支持匹配对应的主域名(例如,*.aliyundoc.com 不能够匹配aliyundoc.com )。如果您需要将主域名接入WAF进行防护,您需要单独添加对应的域名配置(例如,单独添加aliyundoc.com )。
- 如果同时存在泛域名和精确域名配置,则精确域名的转发规则和防护策略优先生效。
|
源站服务端口 |
WAF支持ALB类型、七层SLB类型、四层SLB类型、ECS类型实例的源站服务端口开启透明接入。您可根据需要接入WAF的实例类型,在源站服务端口配置区域选择对应页签。例如,您部署了应用型负载均衡(ALB)实例作为Web服务的入口,需要为ALB实例监听端口上的流量开启WAF防护,单击ALB类型页签。
您可在相应页签,完成如下配置:
- 实例列表:展示云服务中已创建的实例,端口号列展示了该实例下已创建的HTTP或HTTPS的监听端口。您需要为该监听端口开启WAF防护,具体操作,请参见ALB实例端口引流。
- WAF前是否有七层代理(高防/CDN等):选择网站业务在接入WAF前是否开启了其他七层代理服务(例如,DDoS高防、CDN等)。可选项:
- 否:表示WAF收到的业务请求来自发起请求的客户端。WAF直接取与WAF建立连接的IP(来自
REMOTE_ADDR 字段)作为客户端IP。
- 是:表示WAF收到的业务请求来自其他七层代理服务转发,而非直接来自发起请求的客户端。为了保证WAF可以获取真实的客户端IP进行安全分析,您需要进一步设置客户端IP判定方式。
WAF默认读取请求Header字段X-Forwarded-For (XFF)中的第一个IP地址作为客户端IP。
 如果您的网站业务已通过其他代理服务的设置,规定将客户端源IP放置在某个自定义的Header字段(例如,X-Client-IP、X-Real-IP),则您需要选择取指定Header字段中的第一个IP作为客户端源IP,避免XFF伪造,并在指定Header字段框中输入对应的Header字段。
说明 推荐您在业务中使用自定义Header存放客户端IP,并在WAF中配置对应Header字段。该方式可以避免攻击者伪造XFF字段,躲避WAF的检测规则,提高业务的安全性。
支持输入多个Header字段。每输入完一个Header字段,需要按半角逗号(,)确认。设置了多个Header时,WAF将按顺序尝试读取客户端IP。如果第一个Header不存在,则读取第二个,以此类推。如果所有指定Header都不存在,则读取XFF中第一个IP地址作为客户端IP。
- 启用流量标记:设置是否启用WAF流量标记功能。
选中 启用流量标记后,您需要设置标记字段。  标记字段分为以下类型:
- 资源组:从资源组列表中选择该域名所属资源组。
说明 您可以使用资源管理服务创建资源组,根据业务部门、项目等维度对云资源进行分组管理。更多信息,请参见 创建资源组。
|
- 在检查并确认模块,检查已配置的透明接入信息,并单击下一步。
- 在添加完成模块,单击完成,返回网站列表。
域名添加完成后,您可以在
域名列表中查看已添加域名及源站信息,并可以根据需要编辑、删除域名配置。
WAF默认对您在添加域名信息中开启的源站服务端口上的流量进行检测,并将处理后的正常请求返回到源站服务器。您可以根据业务实际需要,在服务器列表页签,修改源站服务端口的流量防护状态。具体操作,请参见步骤二:查看服务器列表信息。
步骤二:查看服务器列表信息
完成域名添加后,您可以查看源站服务器的详细防护信息,以及在需要紧急容灾的情况下强制关闭引流或删除引流端口。
在网站接入页面,单击服务器列表页签,查看已接入WAF防护的源站服务器资产(包含ALB实例、SLB实例、ECS实例)。
- 单击实例前的
图标,展开查看该实例下已添加到WAF防护的端口。
Web流量状态说明:
- Web流量状态(图示①)表示该端口的流量目前是否经过WAF防护,可取值开启或关闭。您可以单击操作列下的关闭引流、开启引流,修改端口引流状态。
说明 关闭端口引流后,该服务器端口的流量将不会经过WAF防护。
- Web流量状态(图示②)表示该实例下端口接入WAF防护的整体状态,可取值未防护、部分防护、运行中。
- 如果实例为四层SLB类型、ECS类型,您可以单击端口操作列下的删除,并在提示对话框中单击确定,删除某个不再需要流量防护的端口。
后续如果您需要重新为该端口开启WAF防护,必须重新添加端口。
后续步骤
完成接入流程后,网站访问流量将经过WAF并受到WAF的防护。WAF包含多种防护检测模块,帮助网站防御不同类型的安全威胁,其中规则防护引擎和CC安全防护模块默认开启,分别用于防御常见的Web应用攻击(例如SQL注入、XSS跨站、webshell上传等)和CC攻击,其他防护模块需要您手动开启并配置具体防护规则。更多信息,请参见网站防护配置概述。