接入管理常见问题

本文列举了Web应用防火墙(Web Application Firewall,简称WAF)3.0版本接入可能遇见的问题。

概览

接入配置页面找不到需要接入的CLB实例、NLB实例或ECS实例的排查方法

问题现象

在接入配置页面,找不到需要接入的CLB实例、NLB实例或ECS实例

解决方案

可能原因

相关操作

要接入的CLB实例、NLB实例或ECS实例不满足限制条件

参考实例接入限制条件,排查实例。具体限制条件,请参见七层CLB(HTTP/HTTPS)实例接入限制四层CLB(TCP)实例接入限制NLB实例接入限制ECS实例接入限制

要接入的CLB实例未添加对应监听

WAF未同步CLB、NLBECS实例

  1. 登录Web应用防火墙3.0控制台。在顶部菜单栏,选择WAF实例的资源组和地域(中国内地非中国内地

  2. 在左侧导航栏,单击接入管理

  3. 选择对应云产品类型,单击接入

  4. 在接入配置面板,单击同步最新资产

添加HTTPS引流端口时,显示CLB证书不全,该如何处理?

问题现象

添加HTTPS引流端口时,WAF会对该端口配置的证书进行来源校验。添加端口后出现以下提示:端口号为XXXCLB证书不全,请到CLB控制台重新选择来源是SSL证书服务的证书

可能原因

  • 配置的证书不是通过阿里云数字证书管理服务(原 SSL 证书)购买的,且未上传到阿里云数字证书管理服务(原 SSL 证书)

  • CLB实例配置该HTTPS端口监听的证书通过CLB控制台上传,然而,这种上传方式导致证书信息无法自动同步到数字证书管理服务(原 SSL 证书管理)。由于 WAF(Web 应用防火墙)仅从数字证书管理服务获取证书信息,这就造成了 WAF 无法获取到完整的证书内容,进而出现证书不全的提示。

  • 曾上传到数字证书管理服务的证书被手动删除,当前数字证书管理服务(原 SSL 证书)中没有您的证书。

解决方案

  1. 将您的证书上传到数字证书管理服务(原 SSL 证书)。具体操作,请参见上传SSL证书

  2. CLB控制台创建证书,并选择证书来源为阿里云签发证书。具体操作,请参见选择阿里云签发证书

  3. CLB控制台,选择已上传的服务器证书。具体操作,请参见步骤二:配置SSL证书

接入WAF返回502状态码的多种场景

问题现象

接入WAF后访问后端服务,返回502状态码;查阅日志中出现状态码为502的请求。

可能原因分析与解决方案

情况一:7CLB开启云产品接入出现偶发502

当前网络架构

image

详细原因分析

WAF的后向连接空闲超时时间:3600秒(1小时)

  • 说明:当CLBWAF之间的连接在1小时内没有任何数据传输时,WAF会自动关闭这个连接。

    image

CLB的前向连接空闲超时时间:15

  • 说明:当客户端(当前情况下的WAF实例)与CLB之间的连接在15秒内没有任何数据传输时,CLB会自动关闭这个连接。

    image

存在极端情况下,长连接在CLB侧老化的瞬间(超过15s没有传输数据),WAF回源请求复用该长连接发送数据到CLB侧,此时CLB上没有长连接信息会发送 RST 报文断开请求,此时在WAF侧出现状态码为502的日志信息。

解决方案

调整云产品接入的七层CLB 配置中的空闲长连接超时时间,调整结果小于CLB的前向连接空闲超时时间,比如调整为14秒。

image

情况二:URI 超长导致偶发502

当前网络架构

image

详细原因分析

7CLB作为WAF流量转发后的下一跳,然而CLBURI长度限制是32K,WAF请求的URI长度超过了CLB服务器能够解析的长度,因此CLB拒绝对该请求提供服务。CLB在日志中记录414状态码,WAF返回502状态码。

解决方案

缩短URI长度,如果数据量很大建议采用POST传输数据。