透明接入模式只需将需要防护的网站信息添加到WAF,无需修改域名的DNS解析设置,即可实现WAF防护。如果您的源站服务器为ECS服务器或者部署在阿里云公网SLB上,那么除了使用CNAME接入模式,还可以选择云原生的透明接入模式。本文介绍如何使用透明接入模式接入WAF。
如果您的实例已升级到WAF 3.0版本,您可以通过云产品接入(包含WAF 2.0的透明接入)的方式,将您的ECS实例、CLB实例、ALB实例等接入WAF。更多信息,请参见云产品接入。
使用限制
限制项类型 | 描述 |
云服务实例类型 | 透明接入不支持私网SLB和IPv6版本的公网SLB实例。 |
SLB和ECS地域 | 支持的地域包括:
由于历史网络架构的原因,部分公网SLB不支持透明接入。 |
引流端口配置的数量 | 不同版本的WAF实例支持添加的引流端口配置的数量如下:
透明接入对指定源站服务器的具体端口生效,即您可以针对某个源站服务器(具有公网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端口)。 |
支持的端口范围 | 支持防护0~65535范围内的任意标准端口和非标端口。更多信息,请参见WAF支持的端口。 说明 仅如下版本的WAF实例支持使用非标端口:
|
业务同时接入DDoS高防和WAF | 如果您的业务需要同时接入DDoS高防和WAF,则只有在业务通过域名接入(即七层接入模式)接入DDoS高防时,该业务才支持通过透明接入模式接入WAF。 如果业务通过端口接入(即四层接入模式)接入DDoS高防,则该业务暂不支持通过透明接入模式接入WAF。针对这种情况,推荐您使用CNAME接入模式,将该业务接入WAF进行防护。更多信息,请参见网站接入(CNAME接入)。 |
前提条件
已开通Web应用防火墙实例。
已创建的云服务实例为IPv4公网的SLB实例,且该SLB实例拥有公网IP,端口未开启双向认证。
说明如果您使用了私网SLB+EIP,也支持使用透明接入。
托管在中国内地服务器上的网站域名,已完成阿里云ICP备案。在阿里云ICP代备案管理系统提交ICP备案订单时,系统会根据您提交的基本信息自动识别本次提交订单的ICP备案类型,自动为您匹配对应备案类型需进行的ICP备案流程。关于阿里云ICP备案的具体操作,请参见如何进行ICP备案。
透明接入配置端口上使用的证书已按先后顺序完成如下操作:
已上传到数字证书管理服务控制台统一管理,或直接从数字证书管理服务控制台购买和申请证书。
已在负载均衡SLB控制台为该透明接入配置的端口配置监听时,选择该证书并完成配置。
说明如果您要接入七层SLB实例上的Web流量,必须满足该前提条件。接入四层SLB实例或ECS源站上的Web流量时,无需满足该前提条件。
已完成云资源访问授权。具体操作,请参见授权WAF访问云资源。
步骤一:添加域名
实例首次接入WAF时,Web业务可能会出现秒级闪断。在客户端可自动重连的情况下该闪断会自动恢复,不会对您的业务造成影响,请您关注业务并根据业务系统评估准备重连或回源等相关容灾机制。
实例接入WAF后,如果进行如下操作,监听端口会自动取消接入。您需要重新添加端口,否则,业务流量将不会经过WAF防护。
配置了七层监听的CLB实例:更换实例上绑定的公网IP、监听端口的证书更换为第三方证书、开启双向认证
ECS实例和配置了四层监听的CLB实例:更换实例上绑定的公网IP、开启双向认证
ECS引流是对EIP或公网IP进行的引流。
ECS解绑EIP后引流会被自动删除。
登录Web应用防火墙控制台,在顶部菜单栏,选择WAF实例的资源组和地域(中国内地、非中国内地)。
在左侧导航栏,选择 。
在域名列表页签,单击网站接入。
在添加域名页面,选择接入模式为透明接入。
在添加域名信息模块,配置域名和源站服务端口等。
配置项
说明
域名
填写网站域名。支持使用精确域名(例如,
www.aliyundoc.com
)和泛域名(例如,*.aliyundoc.com
)格式。具体说明如下:使用泛域名后,WAF将自动匹配该泛域名对应的所有子域名(例如,
*.aliyundoc.com
能够匹配www.aliyundoc.com
、test.aliyundoc.com
等)。重要泛域名不支持匹配对应的主域名(例如,
*.aliyundoc.com
不能匹配aliyundoc.com
)。如果您需要将主域名接入WAF进行防护,您需要单独添加对应的域名配置(例如,单独添加aliyundoc.com
)。如果同时存在泛域名和精确域名配置,则精确域名的转发规则和防护策略优先生效。
源站服务端口
选择要接入WAF的源站服务器端口。
WAF支持ALB类型、七层SLB类型、四层SLB类型、ECS类型实例的源站服务端口开启透明接入。您可根据需要接入WAF的实例类型,在源站服务端口配置区域选择对应页签。例如,您部署了应用型负载均衡(ALB)实例作为Web服务的入口,需要为ALB实例监听端口上的流量开启WAF防护,单击ALB类型页签。
您可在相应页签进行如下操作:
添加端口
ALB类型、七层SLB类型的端口会自动同步到WAF,您需要选中要添加的端口即可。
四层SLB类型、ECS类型的端口需要手动添加,您可以单击添加,为源站服务器端口开启引流。
添加服务器端口后,您可以在实例列表选中该端口。同时,您也可以在服务器列表删除或关闭引流。具体操作,请参见查看源站服务器和管理引流端口
选中实例的监听端口,为端口开启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转发,记录该请求的客户端真实源IP或真实源端口。
选中启用流量标记后,您需要设置标记字段。
重要请不要填写标准的HTTP头部字段(例如User-Agent等),否则会导致标准头部字段内容被自定义的字段值覆盖。
如果攻击者在域名接入WAF前,已获取源站IP信息,并通过购买其他WAF实例,将请求回源到目标源站时,您可以启用流量标记,并设置标记字段。当源站接收到请求后,建议对该字段进行校验。如果存在指定的标记字段,则允许访问。
标记字段分为以下类型:
单击新增标记,可以增加标记字段。最多支持设置5个标记字段。
资源组
从资源组列表中选择该域名所属资源组。
说明您可以使用资源管理服务创建资源组,根据业务部门、项目等维度对云资源进行分组管理。更多信息,请参见创建资源组。
在检查并确认模块,检查已配置的透明接入信息,并单击下一步。
在添加完成模块,单击完成,返回网站列表。
域名添加完成后,您可以在域名列表中查看已添加域名及源站信息,并可以根据需要编辑、删除域名配置。
WAF默认对您在添加域名信息中开启的源站服务端口上的流量进行检测,并将处理后的正常请求返回到源站服务器。您可以根据业务实际需要,在服务器列表页签,修改源站服务端口的流量防护状态。
步骤二:查看和管理引流端口
查看源站服务器和管理引流端口
完成域名添加后,您可以查看源站服务器的详细防护信息,以及在需要紧急容灾的情况下强制关闭引流或删除引流端口。
在网站接入页面,单击服务器列表页签。
单击实例前的图标,展开查看该实例下已添加到WAF防护的端口。
说明四层SLB类型、ECS类型实例的端口不会自动同步到服务器列表,您需要手动添加端口。具体操作,请参见添加端口。
Web流量状态说明:
Web流量状态(图示①)表示该端口的流量目前是否经过WAF防护,可选项开启或关闭。您可以单击操作列下的关闭引流、开启引流,修改端口引流状态。
说明关闭端口引流后,该服务器端口的流量将不会经过WAF防护。
Web流量状态(图示②)表示该实例下端口接入WAF防护的整体状态,可选项未防护、部分防护、运行中。
可选:如果实例为四层SLB类型、ECS类型,您可以单击端口操作列下的删除,并在提示对话框中单击确定,删除某个不再需要流量防护的端口。
更新引流端口配置的证书
ALB实例和七层SLB实例:无需在WAF重新上传证书。
如果实例监听端口配置的证书被更新,您只需要在SLB实例中更新证书,WAF会自动同步。同步时长约30分钟。
重要如果监听端口证书更换为通过第三方平台(非阿里云)购买的证书,您需要在更新证书后,重新将实例接入WAF。
如果对应的负载均衡实例关联有过期证书,则WAF侧无法同步最新证书,需要将过期证书删除后再同步最新证书。
如果WAF自动同步的证书未生效,您可以在服务器列表页签,单击图标,手动更新实例监听端口配置的证书。
ECS实例和四层SLB实例:需要在WAF重新上传证书。
您可以在服务器列表页签,定位到需要更新证书的实例,单击目标端口操作列的编辑,通过手动上传或选择已有证书的方式上传证书。
后续步骤
完成接入流程后,网站访问流量将经过WAF并受到WAF的防护。WAF包含多种防护检测模块,帮助网站防御不同类型的安全威胁,其中规则防护引擎和CC安全防护模块默认开启,分别用于防御常见的Web应用攻击(例如SQL注入、XSS跨站、WebShell上传等)和CC攻击,其他防护模块需要您手动开启并配置具体防护规则。更多信息,请参见网站防护配置概述。