为什么需要放行回源IP
网站以“独享模式”成功接入WAF后,所有网站访问请求将先经过独享引擎配置的ELB然后流转到独享引擎实例进行监控,经独享引擎实例过滤后再返回到源站服务器,流量经独享引擎实例返回源站的过程称为回源。在服务器看来,接入WAF后所有源IP都会变成独享引擎实例的回源IP(即独享引擎实例对应的子网IP),以防止源站IP暴露后被黑客直接攻击。
源站服务器上的安全软件很容易认为独享引擎的回源IP是恶意IP,有可能触发屏蔽WAF回源IP的操作。一旦WAF的回源IP被屏蔽,WAF的请求将无法得到源站的正常响应,因此,网站以“独享模式”接入WAF防护后,您需要在源站服务器上设置放行创建的独享引擎实例对应的子网IP,不然可能会出现网站打不开或打开极其缓慢等情况。
一、回源到ECS
如果您的源站服务器直接部署在华为云ECS上,请参考以下操作步骤设置安全组规则,放行独享模式回源IP。
登录管理控制台。
单击管理控制台左上角的,选择区域或项目。
单击页面左上方的,选择“安全与合规 > Web应用防火墙”,进入“安全总览”页面。
在左侧导航树中,选择“系统管理 > 独享引擎”,进入“独享引擎”页面。
图1 独享引擎列表
在独享引擎列表的“IP地址”栏,获取所有创建的独享引擎对应的子网IP地址。
单击页面左上方的,选择“计算 > 弹性云服务器 ECS”。
在目标ECS所在行的“名称/ID”列中,单击目标ECS实例名称,进入ECS实例的详情页面。
选择“安全组”页签,单击“更改安全组”。
在“更改安全组”对话框中,选择目标安全组或新建安全组并单击“确定”。
单击安全组ID,进入安全组基本信息页面。
选择“入方向规则”页签,单击“添加规则”,进入“添加入方向规则”页面,参数配置说明如表1所示。
图2 添加入方向规则
入方向规则参数配置说明
参数 | 配置说明 |
协议端口 | 安全组规则作用的协议和端口。选择“自定义TCP”后,在TCP框下方输入源站的端口。 |
源地址 | 逐一添加5中获取的所有独享引擎实例的子网IP地址。 说明: |
12 、单击“确定”,安全组规则添加完成。
成功添加安全组规则后,安全组规则将允许独享引擎回源IP地址的所有入方向流量。
您可以使用Telnet工具测试已接入WAF防护的源站IP对应的业务端口是否能成功建立连接验证配置是否生效。
例如,执行以下命令,测试已接入WAF防护的源站IP对外开放的443端口是否能成功建立连接。如果显示端口无法直接连通,但网站业务仍可正常访问,则表示安全组规则配置成功。
Telnet 源站IP 443
二、回源到ELB
1、如果您的源站服务器使用华为云ELB进行流量分发,请参考以下操作步骤设置访问控制(白名单)策略,只放行独享模式回源IP。
2、登录管理控制台。
单击页面左上方的,选择“安全与合规 > Web应用防火墙”,进入“安全总览”页面。
3、在左侧导航树中,选择“系统管理 > 独享引擎”,进入“独享引擎”页面。
图3 独享引擎列表
4、 在独享引擎列表的“IP地址”栏,获取所有创建的独享引擎对应的子网IP地址。
5、单击页面左上方的,选择“网络 > 弹性负载均衡”。
6、在独享引擎绑定的ELB所在行的“名称”列中,单击ELB名称,进入ELB的详情页面。
7、在目标监听器所在行的“访问控制”列,单击“设置”。
8、 在弹出的对话框中,“访问控制”选择“白名单”。
单击“创建IP地址组”,将4中独享引擎实例的回源IP地址添加到“IP地址组”。
在“IP地址组”的下拉框中选择8.a中创建的IP地址组。
9、
单击“确定”,白名单访问控制策略添加完成。
成功配置访问控制策略后,访问控制策略将允许独享引擎回源IP地址的所有入方向流量。
您可以使用Telnet工具测试已接入WAF防护的源站IP对应的业务端口是否能成功建立连接验证配置是否生效。
例如,执行以下命令,测试已接入WAF防护的源站IP对外开放的443端口是否能成功建立连接。如果显示端口无法直接连通,但网站业务仍可正常访问,则表示安全组规则配置成功。
Telnet 源站IP 443