如果您已创建ECS实例,您可以添加实例的引流端口到Web应用防火墙(Web Application Firewall,简称WAF),将Web业务引流到WAF防护。本文介绍如何将ECS实例接入WAF。
使用限制
限制项类型 | 描述 |
---|---|
支持的实例 | 同时满足:
|
支持的地域 |
|
引流端口配置的数量 | 不超过65。 |
支持的端口范围 | 支持防护0~65535范围内的任意端口,包括标准端口和非标端口。更多信息,请参见WAF支持的端口范围。 |
业务同时接入DDoS高防和WAF | 如果您的业务需要同时接入DDoS高防和WAF,则只有在业务通过域名接入(即七层接入模式)接入DDoS高防时,该业务才支持通过透明接入模式接入WAF。 |
前提条件
- 已开通WAF 3.0服务。具体操作,请参见开通包年包月WAF 3.0、开通按量付费WAF 3.0。
- 已创建满足使用限制要求的ECS实例。关于使用限制描述,请参见使用限制。关于创建ECS实例的具体操作,请参见创建实例。
- 已完成云资源访问授权。具体操作,请参见授权WAF访问云资源。
操作步骤
- 实例首次接入WAF时,可能会导致Web业务出现秒级闪断。该闪断会自动恢复,不会对您的业务造成影响。
- 实例接入WAF后,如果更换实例上绑定的公网IP,需要重新将实例接入WAF。否则,业务流量将不会经过WAF防护。
- 登录Web应用防火墙3.0控制台。在顶部菜单栏,选择WAF实例的资源组和地域(中国内地、非中国内地)。
- 在左侧导航栏,单击接入管理。
- 选择云产品接入页签,在左侧云产品类型列表,选择ECS。
- 单击接入,完成以下配置。
配置项 相关操作 选择需要添加的实例&端口 - 同步最新资产
如果要添加的实例未同步到实例列表,单击同步最新资产,更新实例列表。
- 添加端口
- 定位到要添加的实例,单击操作列的添加端口。
- 填写要添加的端口信息,按回车进行确认。
您输入的端口必须在可选端口范围。您可以单击查看端口范围,查看WAF支持的HTTP及HTTPS端口。更多信息,请参见WAF支持的端口范围。
- 选择端口对应的协议类型。可选项:HTTP、HTTPS。选择HTTPS后,需要上传证书。
- 默认证书
- 手动上传单击上传证书,填写证书名称、证书文件(格式示例:
-----BEGIN CERTIFICATE-----......-----END CERTIFICATE-----
)和证书私钥(格式示例:-----BEGIN RSA PRIVATE KEY-----......-----END RSA PRIVATE KEY-----
)。重要- 如果证书是PEM、CER、CRT格式,您可以使用文本编辑器直接打开证书文件,并复制其中的文本内容。
- 如果证书是除PEM、CER、CRT外的其他格式(例如,PFX、P7B等),您必须将证书文件转换成PEM格式后,才可以使用文本编辑器获取其中的文本内容。关于证书格式的转换方法,请参见不同格式的HTTPS证书转换成PEM格式。
- 如果域名关联了多个SSL证书(例如,存在证书链),您必须将证书文件中的文本内容拼接后,再上传到WAF。
- 选择已有证书
从已有证书列表(包含通过阿里云SSL证书服务签发的证书、已上传到SSL证书服务的第三方证书)选择要上传到WAF的证书。
您可以单击云盾-证书服务,前往SSL证书管理控制台,查看已有证书。
- 手动上传
- 扩展证书
如果您的CLB实例配置了多个域名的HTTPS网站,可通过扩展证书导入多个不同域名对应的证书。扩展证书的上传方式与默认证书相同,具体操作,请参见默认证书。
- 选中HTTPS后,还支持启用以下高级配置:
- TLS协议版本
自定义HTTPS通信中允许使用的TLS协议版本。如果客户端使用不符合要求的协议版本,WAF会丢弃其请求流量。此处设置的协议版本越高,通信安全性越好,但兼容性会有所降低。
建议您根据网站本身的HTTPS配置,选择允许WAF监听的TLS协议版本。如果您不清楚网站的HTTPS配置,建议使用默认选项。
可选项:- 支持TLS 1.0及以上版本,兼容性最高,安全性较低(默认)
- 支持TLS 1.1及以上版本,兼容性较好,安全性较好
使用该选项后,如果客户端使用TLS 1.0版本,将无法访问网站。
- 支持TLS 1.2及以上版本,兼容性较好,安全性最高
使用该选项后,如果客户端使用TLS 1.0和1.1版本,将无法访问网站。
- 加密套件
自定义HTTPS通信中允许使用的加密套件。如果客户端使用不符合要求的加密套件,WAF会丢弃其请求流量。
默认已选择WAF支持的全部加密套件。建议您只在网站只支持特定加密套件的前提下,再修改该配置。
可选项:- 全部加密套件,兼容性较高,安全性较低(默认)
- 协议版本的自定义加密套件,请谨慎选择,避免影响业务:如果您的网站本身只支持特定的加密套件,请选择该选项,并从WAF支持的加密套件中选择网站支持的加密套件。
如果客户端使用其他加密套件,将无法访问网站。
- TLS协议版本
- 默认证书
WAF前是否有七层代理(高防/CDN等) 如果网站在接入WAF前启用了其他七层代理服务(例如DDoS高防、CDN等),配置该功能。 - 无其他代理服务,选择否(默认)选择否(默认),表示WAF收到客户端直接发起的业务请求(不是从其他代理服务转发的请求)。说明 WAF直接取与WAF建立连接的IP(来自请求的
REMOTE_ADDR
字段)作为客户端IP。 - 有其他代理服务,选择是
选择是,表示WAF收到的业务请求来自其他七层代理服务转发(不是客户端直接发起的请求)。为保证WAF可以获取真实的客户端IP进行安全分析,您需要进一步设置客户端IP判定方式。
可选项:- 取指定Header字段中的第一个IP作为客户端源IP,避免XFF伪造如果您的网站业务已通过其他代理服务的设置,规定将客户端源IP放置在某个自定义的Header字段(例如,X-Client-IP、X-Real-IP),则您需要选择该选项,并在指定Header字段框中输入对应的Header字段。说明 推荐您在业务中使用自定义Header存放客户端IP,并在WAF中配置对应Header字段。该方式可以避免攻击者伪造XFF字段,躲避WAF的检测规则,提高业务的安全性。
支持输入多个Header字段。每输入完一个Header字段,按回车进行确认。如果设置了多个Header,WAF将按顺序尝试读取客户端IP。如果第一个Header不存在,则读取第二个,以此类推。如果所有指定Header都不存在,则读取XFF中第一个IP地址作为客户端IP。
- 取指定Header字段中的第一个IP作为客户端源IP,避免XFF伪造
启用流量标记 WAF转发回源请求时,是否需要在请求头中添加或修改由您指定的自定义字段。 - 不需要启用,无需配置。
- 需要启用,完成如下配置。选中启用流量标记,并设置标记字段。重要 请不要填写标准的HTTP头部字段(例如User-Agent等),否则会导致标准头部字段内容被自定义的字段值覆盖。标记字段分为以下类型:
- 自定义Header
通过配置Header名和Header值,使WAF在回源请求中添加该Header信息,标记经过WAF的请求(区分没有经过WAF的请求,便于您的后端服务统计分析)。
例如,您可以使用
ALIWAF-TAG: Yes
标记经过WAF的请求,其中,ALIWAF-TAG
为Header名,Yes
为Header值。 - 客户端真实源IP
通过配置真实客户端源IP所在的头部字段名,WAF可记录该头部字段并将该头部字段传递回源站。关于WAF判定客户端真实源IP的具体规则,请参见WAF前是否有七层代理(高防/CDN等)参数的描述。
- 客户端真实源端口
通过配置真实客户端源端口所在的头部字段名,WAF可记录该头部字段并将该头部字段传递回源站。
单击新增标记,可以增加标记字段。最多支持设置5个标记字段。
- 自定义Header
资源组 从资源组列表中选择该域名所属资源组。如果不选择,则默认加入默认资源组。 说明 您可以使用资源管理服务创建资源组,根据业务部门、项目等维度对云资源进行分组管理。更多信息,请参见创建资源组。 - 同步最新资产
- 确认并选中要添加的实例后,单击确定。完成接入后,WAF会自动生成一个命名为“实例id-端口-资产类型”的防护对象,并为该防护对象默认开启基础防护规则。您可以在接入列表,单击已接入的实例ID,在防护对象页面,查看自动添加的防护对象,并为其配置防护规则。具体操作,请参见防护配置概述。