更新时间:2026-09-07 GMT+08:00
分享

流量异常故障排查

现象描述

在企业云上业务运行过程中,数据面故障是最常见的网络问题之一。当业务系统通过云防火墙进行安全防护时,访问流量需要经过防火墙的安全策略检查。如果防火墙配置不当或安全策略误拦截了正常业务流量,将导致端到端业务中断,表现为客户端请求服务端失败、超时,或者会话建立后出现业务中断。

本案例面向运维工程师和安全运营人员,介绍当业务出现网络中断时的排查思路和处理方法,帮助您快速定位流量是否被云防火墙拦截,并根据拦截原因采取相应的恢复措施,最大程度缩短业务恢复时间。

原理说明

云防火墙防护架构中,业务流量路径如下:

客户端 → 云防火墙 → 服务端

云防火墙对流经的流量进行多层安全检查,主要包括:

  • 访问控制策略:根据预配置的访问控制规则和黑名单,对匹配的流量执行放行或阻断动作。
  • 入侵防御(IPS):对流量进行深度检测,匹配到攻击特征的流量会被拦截。IPS规则包括基础防护规则、虚拟补丁规则、反弹Shell检测和敏感目录扫描检测等。
  • 流量过滤:基于IP黑名单对流量进行过滤。

当业务流量在上述任一环节被阻断时,均可能导致业务中断。排查的核心思路是逐层检查防火墙各模块的日志,确认流量是否被拦截以及被哪个模块拦截,然后采取对应的处理措施。

排查及处理步骤

  1. 查看是否有阻断日志。

    1. 登录云防火墙控制台
    2. 单击管理控制台左上角的,选择区域。
    3. (可选)切换防火墙实例:如果有多个防火墙实例,可以在页面左上角的下拉框中进行切换。
    4. (可选)切换防火墙实例:如果有多个防火墙实例,可以在页面左上角的下拉框中进行切换。
    5. 在左侧导航树中,选择运维分析 > 日志查询,默认进入攻击事件日志 > 互联网边界防火墙页面。
    6. 选择“访问控制日志”页签,进入访问控制日志页面后,再根据异常场景选择对应页签。
      • 如果异常场景为互联网边界的EIP互访,选择“互联网边界防火墙”页签;
      • 如果异常场景为VPC间的业务互访,选择“VPC边界防火墙”
    7. 根据异常业务的源和目的IP进行日志搜索,查看是否有阻断日志(响应动作为阻断)。
      图1 阻断日志

  2. 判断阻断日志产生原因并进行处理。

    阻断日志可能是命中访问控制规则或者黑名单而产生的。排查阻断日志原因:

    1. “访问控制日志”页面中,单击“规则/规则ID”列的规则名称或黑名单,可以跳转到对应的详情页面。
    2. 查看阻断日志命中情况并确认规则参数设置信息。
      • 如果命中了访问控制规则
        • 确认阻断规则中的源IP或者源地址组是否包含了期望放行的IP。
        • 确认阻断规则中的目的IP或者目的地址组是否包含了期望放行的IP。
        • 确认阻断规则中的目的域名或域名组是否包含了期望放行的域名。
      • 如果命中了黑名单

        确认黑名单中源或者目的IP是否包含了期望放行的IP。

    3. 排查完成后,如果是访问控制规则或黑名单导致的阻断,修改对应规则或黑名单后业务应恢复正常。如果未发现访问控制阻断日志,请继续执行步骤 3

      修改防护规则详细操作请参见编辑防护规则;修改黑名单详细操作请参见编辑黑名单

      • 修改访问控制规则可能影响其他业务流量的安全防护策略。修改前请确认变更影响范围,建议先在测试环境验证后再在生产环境操作。
      • 从黑名单中移除IP将解除对某个IP的拦截,请确认该IP不构成安全威胁后再操作。

  3. 检查报文是否被入侵防御模块拦截。

    1. 在日志查询页面中选择“攻击事件日志”页签,进入攻击事件日志页面后,再根据异常场景选择对应页签。
      • 如果异常场景为互联网边界的EIP互访,选择“互联网边界防火墙”页签;
      • 如果异常场景为VPC间的业务互访,选择“VPC边界防火墙”
    2. 根据异常业务的源和目的IP进行日志搜索,查看是否有阻断日志,确认业务报文是否被入侵防御模块拦截。

      注:查询攻击日志时,如果搜索源IP到目的IP(A→B)没有结果,请反向搜索目的IP到源IP(B→A)。因为攻击日志是按照攻击发起的方向记录源和目的IP,而非按照会话发起的方向记录。

      图2 攻击事件日志

  4. 处理入侵防御模块拦截的报文。

    报文被入侵防御模块拦截时,根据攻击日志中的规则ID或规则名称,分为以下4种场景:

    • 场景1:攻击日志中的规则ID为760001(反弹Shell拦截)

      表示报文命中了反弹shell,日志中的IP或者会话会按照入侵防御 > 反弹Shell的设置进行拦截。

      处理方式:如果确认报文为客户端发起的正常业务请求,可以将发起请求的IP添加一条白名单规则,将报文放行。

      添加白名单详细操作请参见通过白名单放行互联网边界流量通过白名单放行VPC边界流量

    • 场景2:攻击日志中的规则ID为360021(敏感目录扫描拦截)

      表示报文命中了敏感目录扫描,日志中的ip或者会话会按照入侵防御 > 敏感目录扫描的设置进行拦截。

      处理方式:如果确认报文为客户端发起的正常业务请求,可以将发起请求的IP添加一条白名单规则,将报文放行。

      添加白名单详细操作请参见通过白名单放行互联网边界流量通过白名单放行VPC边界流量

    • 场景3:攻击日志中的规则ID为其他ID(基础防护或虚拟补丁规则拦截)

      表示报文命中了基础防护或虚拟补丁中的IPS规则。

      处理方式:如果确认报文为客户端发起的正常业务请求,可以采取以下任一方式处理:

      • 将源IP添加一条白名单规则,将报文放行。

        添加白名单详细操作请参见通过白名单放行互联网边界流量通过白名单放行VPC边界流量

      • 修改规则的动作,将将报文放行。
        1. 在左侧导航栏中,选择防护策略 > 攻击防御 > 入侵防御,进入入侵防御界面。
        2. 保持“基础防御”右侧开关开启。
        3. 单击“基础防御”栏中的“查看生效中的规则”,进入基础防御规则页面。
        4. 根据规则ID进行搜索,将规则的当前动作设置为观察或者禁用,并在弹出的确认框中,单击“确定”
          图3 变更动作

          将IPS规则动作从阻断修改为观察禁用会降低安全防护能力,请仅在确认报文为正常业务流量后操作,并在风险解除后及时恢复规则动作。

    • 场景4:攻击日志中的规则名称为“Blacklist-IP”(流量过滤拦截)

      表示报文被“流量过滤”功能拦截。

      处理方式:在流量过滤中将被封堵的IP从文件中去掉,再用全量覆盖的方式重新导入。

      1. 在左侧导航栏中,选择防护策略 > 访问控制 > 流量过滤,进入流量封堵页面。
      2. 在封堵对象列表中,单击目标流量过滤的IP文件操作列的“下载”
      3. 将被封堵的IP从下载的文件中去掉。
      4. 在流量封堵页面中单击“添加封堵对象”,并配置参数信息。
        • 模式:选择全量覆盖。
        • 生效范围:选择EIP
        • 添加方式:选择文件上传
        • 选择文件:单击添加文件,并选择刚修改后的文件。
      5. 单击“确认”,并在弹出的确认框中,确认无误后,单击“确定”

    排查完成后,执行步骤 5,进一步确认流量转发情况。

  5. 检查流量日志。

    1. 在日志查询页面中选择“流量日志”页签,进入流量日志页面后,再根据异常场景选择对应页签。
      • 如果异常场景为互联网边界的EIP互访,选择“互联网边界防火墙”页签;
      • 如果异常场景为VPC间的业务互访,选择“VPC边界防火墙”
    2. 根据异常业务的源和目的IP进行日志搜索,确认是否有流量日志。
      • 如果搜索到流量日志,表示源目IP已经在防火墙上创建了会话,查看日志的“流报文数”
        图4 流报文数
        • 若响应报文为0,需要排查服务端是否收到请求报文以及是否发送响应报文;
        • 若响应报文不为0,表示两个方向的报文云防火墙均正常转发,需要排查客户端到防火墙之间的反向链路是否正常。
      • 如果没有搜索到流量日志,表示流量可能没有到达防火墙,可以执行步骤 6通过抓包功能进一步确认。

  6. 通过网络抓包进一步确认报文是否到达防火墙。

    1. 在左侧导航栏中,选择系统管理 > 网络抓包,进入网络抓包页面。
    2. 单击“新建抓包任务”,并在新建抓包任务页面中,按照请求发起的放行配置源、目的IP和端口,单击“确认”,任务开始执行。
    3. 执行完成后,下载抓包文件,确认是否抓到报文。
      • 是:需要云防火墙服务侧进一步定位原因。

        说明报文已到达防火墙,需要云防火墙服务侧进一步定位原因,请提交工单联系华为云技术支持。

      • 否:报文没有来到防火墙,需要向防火墙之前的链路排查。

        说明报文没有到达防火墙,需要向防火墙之前的链路排查,如检查路由配置、安全组规则等。

相关文档

相关文档