本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。
CNAME接入模式下,网站的业务流量经过WAF防护后流回源站。若源站IP泄露则攻击者会绕过WAF直接攻击源站。您可以为源站服务器配置访问控制策略,只放行WAF回源IP段入方向的流量来保护源站。本文以部署了阿里云负载均衡SLB的ECS服务器为例,讲解如何配置访问控制策略。
网站接入WAF防护后,无论您是否设置源站保护,都不影响正常业务的转发。
如果您使用透明接入方式,将源站阿里云服务器ECS和负载均衡SLB的业务流量接入WAF防护,引流端口的所有流量都会被牵引到WAF防护,攻击者无法绕过WAF直接攻击源站。因此,您无需设置源站保护。
风险须知
配置源站服务器的访问控制策略存在一定风险。在设置源站保护前,请注意以下事项:
请确保同一源站ECS实例或SLB实例上的所有域名都已经接入WAF进行防护,避免攻击者通过未接入WAF的域名入侵源站,从而影响其他域名业务。
在WAF集群出现故障时,WAF可能会将域名访问请求旁路回源至源站,确保网站正常访问。这种情况下,如果源站已设置ECS安全组或SLB白名单访问控制策略,可能会导致源站暂时无法通过公网访问。
当WAF集群扩容增加新的回源IP段时,如果源站已设置ECS安全组或SLB白名单防护,可能会导致频繁出现5XX错误响应。建议您定期关注Web应用防火墙控制台发布的回源网段变更通知,及时更新涉及回源IP网段的访问控制策略。
如果您不再使用WAF,在将业务流量切回源站服务器之前,请务必先删除已添加的访问控制策略,放行所有业务流量,避免业务流量切回后出现业务中断。
前提条件
步骤一:检测源站是否存在IP暴露风险
您可以在非阿里云环境直接使用Telnet工具连接源站公网IP地址的业务端口,检测是否能够成功建立连接:
如果可以连通,表示源站存在IP泄露风险,一旦黑客获取到源站公网IP就可以绕过WAF直接访问源站。
如果无法连通,表示源站当前不存在IP泄露风险。
示例:测试已接入WAF进行防护的源站IP的80端口和8080端口是否能成功建立连接。以下截图中的测试结果显示端口可以连通,说明源站存在IP泄露风险。
步骤二:获取WAF回源IP段
WAF回源IP段会定期更新,请关注定期变更通知,及时将更新后的回源IP段添加至相应的安全组或白名单规则中,避免出现误拦截。
登录Web应用防火墙控制台,在顶部菜单栏,选择WAF实例的资源组和地域(中国内地、非中国内地)。
在左侧导航栏,选择 。
- 在产品信息页面右下方的回源IP段区域,单击复制全部IP。回源IP段区域实时显示WAF回源IP段。
步骤三:设置ECS安全组规则
如果您的源站服务器为云服务器ECS,请在获取WAF回源IP段后,参照以下步骤设置源站ECS实例的安全组规则,只放行WAF回源IP段的入方向流量,拒绝所有其他IP段的入方向流量。
- 进入安全组页面。
登录ECS管理控制台。
在左侧导航栏,选择 。
在顶部菜单栏左上角处,选择地域。
- 找到目标安全组,在操作列中,单击管理规则。
- 选择安全组规则所属的方向。
- 如果安全组的网络类型为专有网络,请选择入方向或出方向。
- 如果安全组的网络类型为经典网络,请选择入方向、出方向、公网入方向或公网出方向。
添加一条优先级最高的安全组规则,放行WAF回源IP段的入方向流量。
在访问规则区域的入方向页签下,单击手动添加。
完成以下规则配置,并单击保存。
配置项
说明
授权策略
选择允许。
优先级
输入1,表示优先级最高。
协议类型
选择自定义TCP。
端口范围
选择HTTP(80)和HTTPS(443)。
授权对象
将已复制的WAF回源IP段粘贴到源输入框。
描述
自定义描述信息。示例:放行WAF回源IP。
重要如果当前安全组防护的服务器与WAF回源IP以外的其他IP、HTTP或HTTPS以外的其他应用有交互,请将这些交互IP和端口通过安全组一并加白放行。
成功添加该安全组规则后,ECS实例安全组将以最高优先级放行WAF回源IP段的所有入方向流量。
警告请务必确保所有WAF回源IP段都已通过源站ECS实例的安全组规则设置了入方向的允许策略,否则可能导致网站访问异常。
添加一条优先级最低的安全组规则,拒绝其余所有IP段的入方向流量。
在访问规则区域的入方向页签下,单击手动添加。
完成以下规则配置,并单击保存。
配置项
说明
授权策略
选择拒绝。
优先级
输入100,表示优先级最低。
协议类型
选择自定义TCP。
端口范围
选择HTTP(80)和HTTPS(443)。
授权对象
在源输入框,输入0.0.0.0/0(表示所有IP段)并按回车键。
描述
自定义描述信息。示例:拒绝所有入方向流量。
成功添加该安全组规则后,ECS实例安全组除了放行WAF回源IP段的入方向流量外,还将拒绝所有其他IP段的入方向流量,保证所有业务流量都经WAF转发到源站ECS实例。
步骤四:设置SLB访问控制
如果您的源站服务器部署了负载均衡SLB,您还需要设置SLB实例的访问控制(白名单)策略,只放行WAF回源IP段的入方向流量。
以下操作描述以传统型负载均衡CLB为例进行介绍。如果您使用应用型负载均衡ALB,请结合以下操作描述及ALB访问控制文档进行操作。
- 登录传统型负载均衡CLB控制台。
在顶部菜单栏,选择实例所属地域。
在左侧导航栏,选择 。
创建_IPv4访问控制策略组。
在访问控制页面,单击创建访问控制策略组。
在创建访问控制策略组面板,完成以下策略组配置,并单击创建。
以下配置表示为所有IPv4类型的WAF回源IP创建一个策略组。
配置项
说明
策略组名称
自定义策略组名称。示例:WAF回源IP段_IPv4。
所属资源组
选择策略组所属资源组。
IP版本
选择IPv4。
批量添加IP地址/地址段和备注
粘贴所有IPv4类型的WAF回源IP。
每行只允许输入一个条目。多个条目间通过回车分隔。
说明由于复制获取的所有WAF回源IP段之间以半角逗号(,)分隔,建议您使用支持扩展替换的文本编辑器,将半角逗号(,)统一替换为换行符(\n)再进行粘贴。
重复步骤4,为所有IPv6类型的WAF回源IP创建一个策略组。
与步骤4有差异的配置说明如下:
策略组名称:您可以将该策略组命名为WAF回源IP段_IPv6。
IP版本:选择IPv6。
批量添加IP地址/地址段和备注:粘贴所有IPv6类型的WAF回源IP。
为监听设置访问控制策略。
在左侧导航栏,选择 。
在实例管理列表,定位到要操作的实例,单击实例ID。
在监听列表,定位到要设置的监听,在操作列下单击图标,然后单击设置访问控制。
请根据已接入WAF防护的业务类型,选择要设置的监听:
如果您已将HTTP业务接入WAF防护,则需要设置HTTP监听。
如果您已将HTTPS业务接入WAF防护,则需要设置HTTPS监听。
如果您已将HTTP和HTTPS业务接入WAF防护,则需要分别设置HTTP监听和HTTPS监听。
在访问控制设置面板,打开启动访问控制开关并完成以下配置。
配置项
说明
访问控制方式
选择白名单:允许特定IP访问负载均衡SLB。
选择访问控制策略组
根据CLB实例的IP版本,选择WAF回源IP对应的访问控制策略组:
IPv4类型CLB实例仅支持选择IPv4版本的策略组。
IPv6类型CLB实例仅支持选择IPv6版本的策略组。
完成以上配置后,CLB实例监听将会放行WAF回源IP段的入方向流量。
后续操作
完成ECS安全组或SLB白名单设置后,您可以通过测试源站IP的80端口和8080端口是否能成功建立连接,验证设置是否已生效。
如果端口无法直接连通,但网站业务仍可正常访问,则表示源站保护已设置成功。