文档简介:
如何排查404/502/504错误?
域名接入WAF防护之后,若您访问网站时出现404 Not Found、502 Bad Gateway,504 Gateway Timeout等错误,请参考以下方法解决。
404 Not Found
现象一: 访问网站时,返回如图所示的页面。
404页面
原因 :访问地址增加的端口错误。
添加防护域名到WAF时,配置了非标准端口,访问网站时未加端口或使用源站端口,而不是非标准端口,例如配置了如图14-6所示的非标准端口业务,用“https://www.example.com”或者“https://www.example.com:80”访问网站。
非标准端口配置
解决办法 :在访问链接后加上非标准端口,再次访问源站,如“https://www.example.com:8080”。
添加防护域名到WAF时,没有配置非标准端口,访问时使用了非标准端口或者“源站端口”配置的非标准端口,例如配置了如图14-7所示的防护业务,用“https://www.example.com:8080”访问网站。
未配置非标准端口
没有配置非标准端口的情况下,WAF默认防护80/443端口的业务。其他端口的业务不能正常访问,如果您需要防护其他非标准端口的业务,请重新进行域名配置。
解决办法: 直接访问网站域名,如“https://www.example.com”。
现象二: 访问网站时,返回的不是图14-5所示的页面,而是其他的404页面。
原因 :网站页面不存在或已删除。
解决办法 :请排查网站问题。
502 Bad Gateway
现象: 完成WAF配置之后网站访问正常,但过一段时间,访问页面返回502,或者大概率出现502。
如果您的网站不是部署在云上,建议您咨询服务器服务商,该服务器是否存在默认的防护拦截并要求服务商解除默认拦截。
这种情况一般有三种原因:
原因一 :您的网站使用了其他的安全防护软件(如360、安全狗、云锁或云盾等安全防护软件),这些软件把WAF的回源IP当成了恶意IP,拦截了WAF转发的请求,导致不能正常访问。
解决办法: 将WAF的回源IP网段添加到防火墙(硬件或软件)、安全防护软件、业务限速模块的白名单中。
原因二 :网站的后端配置了多个服务器,其中某个源站不通。
按以下方法检测源站配置是否正确:
a.
登录管理控制台,单击页面上方的“服务列表”,选择“安全 > Web应用防火墙”,进入Web应用防火墙控制界面。
b.
在左侧导航树中选择“网站设置”,进入“网站设置”页面。
c.
在目标域名所在行的“防护网站”列中,单击目标域名,进入域名基本信息页面。
d.
在“服务器信息”栏中,单击
,进入“修改服务器信息”页面,确保对外协议、源站协议、源站地址、端口等信息配置正确。
服务器配置
e.
在主机上执行curl命令检测各个源站是否能正常访问。
curl http://xx.xx.xx.xx:yy -kvv
xx.xx.xx.xx代表源站服务器的源站IP地址,yy代表源站服务器的源站端口,xx.xx.xx.xx和yy必须是同一个服务器的源站地址和端口。
说明
执行curl命令的主机需要满足以下条件:
网络通信正常。
已安装curl命令。Windows操作系统的主机需要手动安装curl,其他操作系统自带curl。
您也可以在浏览器中输入“http:// 源站地址 : 源站端口 ”检测源站是否能正常访问。
检测源站
如果显示“connection refused”表示源站不通,不能正常访问网站。按以下方法处理:
检测服务器是否运行正常,如果运行不正常,请尝试重启服务器。
将WAF的回源IP网段添加到防火墙(硬件或软件)、安全防护软件、业务限速模块的白名单中。
原因三 :源站性能问题。
解决办法: 排查网站问题并联系您的网站负责人进行解决。
504 Gateway Timeout
现象: 完成WAF域名接入配置之后,业务正常,但当业务量增加时,发生504错误的概率增加,直接访问源站IP也有一定概率出现504的返回码。
可能有以下几个原因:
原因一 :后端服务器性能问题(连接数,CPU内存占用过大等)。
解决办法:
a.
优化服务器的相关配置,包括TCP网络参数的优化配置,ulimit相关参数设置等。
b.
为了支撑业务量的大量增长,可按照方法一或者方法二进行处理。
方法一 :在ELB上增加后端服务器组。
方法二 :创建新的ELB,并参照以下方法将ELB的EIP作为服务器的IP地址,接入WAF。
i.
登录管理控制台,单击页面上方的“服务列表”,选择“安全 > Web应用防火墙”,进入Web应用防火墙控制界面。
ii. 在左侧导航树中选择“网站设置”,进入“网站设置”页面。
iii. 在目标域名所在行的“防护网站”列中,单击目标域名,进入域名基本信息页面。
iv. 在“服务器信息”栏中,单击
,进入“修改服务器信息”页面,单击“添加”,新增后端服务器。
c.
如果客户端协议即“对外协议”是HTTPS协议,可考虑在WAF设置HTTPS转发,回源走HTTP协议即“源站协议”设置为HTTP,降低后端服务器的计算压力。
原因二 :安全组未将WAF回源IP设置为白名单或未放开端口。
解决办法: 将WAF的回源IP在网站所在的ECS的安全组里设置为白名单。
原因三 :源站有防火墙设备,且该防火墙设备拦截了WAF的回源IP。
解决办法: 将WAF的回源IP在网站所在的ECS的安全组里设置为白名单或者卸载除WAF以外其他防火墙软件。
原因四 :连接超时、read超时。
解决办法:
数据库查询时间过长:
调整优化业务,尽量缩短查询时长,优化用户体验。
修改请求的交互方式,让这种长连接在 60s 内能有一些数据交互(如,ack报文、心跳包、keep-alive等任何可以维持会话的报文)。
大文件上传时间过长:
调整优化业务,尽量缩短文件上传时间。
建议使用FTP方式上传文件。
直接通过IP上传,或者使用没有被WAF防护的域名上传。
使用WAF的独享模式,独享WAF回源超时默认为180s。
源站故障类:
检查源站业务是否正常。
原因五 :源站超带宽。
解决办法 : 扩展源站服务器带宽。
域名/IP接入状态显示“未接入”,如何处理?
故障现象
添加防护域名或IP后,域名或IP接入WAF失败,即防护网站“域名接入进度”未显示“已接入”。
WAF每隔一小时就会自动检测防护网站的
“接入状态”,当WAF统计防护网站在5分钟内达到20次访问请求时,将认定该防护网站已成功接入WAF。
排查思路和处理建议
防护网站的“部署模式”为“独享模式”时,请参考图进行排查处理。
独享模式排查思路
独享模式接入WAF失败问题处理
可能原因 | 处理建议 |
---|---|
原因一:域名 /IP “接入状态”未刷新 | 在防护网站“接入状态”栏,单击 刷新状态。 |
原因二:访问流量未达到WAF统计要求须知 防护网站接入WAF后,当WAF统计防护网站在5分钟内有20次请求时,将认定该防护网站已接入WAF。 | 1. 在1分钟内多次访问防护网站。 2. 在防护网站“接入状态”栏,单击 刷新状态。 |
原因三:域名 /IP****参数配置错误 | 检查域名/IP参数是否正确。 如果域名/IP配置错误,删除该域名/IP后重新添加防护网站。 |
原因四:没有为独享模式实例配置负载均衡,配置的负载均衡未绑定弹性公网****IP | 1. 为独享引擎实例5.2.3步骤二:配置负载均衡。 2. 5.2.4步骤三:为弹性负载均衡绑定弹性公网IP。 |
原因五:独享模式实例负载均衡配置错误或负载均衡绑定弹性公网IP错误 | l 5.2.3步骤二:配置负载均衡后,当WAF独享引擎实例的“健康检查结果”为“正常”时,说明弹性负载均衡配置成功。 l 5.2.4步骤三:为弹性负载均衡绑定弹性公网IP后,可以查看绑定的弹性公网IP,说明绑定成功。 |
WAF误拦截了“非法请求”访问请求,如何处理?
问题现象
防护网站接入WAF后,访问请求被WAF拦截,在“防护事件”页面查看防护日志,显示访问请求为“非法请求”且误报处理按钮置灰不能使用。
可能原因
当遇到以下情况时,WAF将判定该访问请求为非法请求并拦截该访问请求:
POST/PUT使用“form-data”时,表单的参数个数多于8192个。
URI的参数个数多于2048个。
Header个数超过512个。
处理建议
当确认访问请求为正常请求时,请参见配置精准访问防护规则放行该访问请求。
如何解决重定向次数过多?
在WAF中完成了域名接入后,请求访问目标域名时,如果提示“重定向次数过多”,一般是由于您在服务器后端配置了HTTP强制跳转HTTPS,在WAF上只配置了一条HTTPS(对外协议)到HTTP(源站协议)的转发,强制WAF将用户的请求进行跳转,所以造成死循环。配置两条HTTP(对外协议)到HTTP(源站协议)和HTTPS(对外协议)到HTTPS(源站协议)的服务器信息。
如何解决HTTPS请求在部分手机访问异常?
打开手机浏览器,访问防护域名,如果出现类似如图14-12所示的页面,则表示该手机上HTTPS请求访问异常,该问题是由于上传的证书链不完整,可参照如何解决证书链不完整?解决。
如何解决证书链不完整?
如果证书机构提供的证书在用户平台内置信任库中查询不到,且证书链中没有颁发机构,则证明该证书是不完整的证书。使用不完整的证书,当用户访问防护域名对应的浏览器时,因不受信任而不能正常访问防护域名对应的浏览器。
按以下两种方法可解决此问题:
手动构造完整证书链,并上传证书。(WAF自动补全证书链功能正在开发中,敬请期待!)
重新上传正确的证书。
Chrome最新版本一般是支持自动验证信任链,手工构造完整的证书链步骤如下:
1 查看证书 。单击浏览器前的锁,可查看证书状况。
2 查看证书链 。单击“证书”,并选中“证书路径”页签,可单击证书名称查看证书状态。
查看证书链
3 逐一将证书另存到本地 。
选中证书名称,单击“详细信息”页签,如图所示。
详细信息
单击“复制到文件”,按照界面提示,单击“下一步”。
选择“Base64编码”,单击“下一步”,如图所示。
4 证书全部导出到本地后,用记事本打开证书文件,图重组证书顺序,完成证书重构。
如何解决证书与密钥不匹配问题?
在DDos高防控制台、WAF控制台上传HTTPS证书后,收到证书和密钥不匹配的提示。
解决方案
可能的原因 | 修复建议 |
---|---|
您上传的证书与私钥内容不匹配 | 1. 执行以下命令,分别查看证书和私钥文件的MD5值: openssl x509 -noout -modulus -in <证书文件> |
RSA私钥格式错误 | 1. 执行以下命令,生成一个新的私钥: openssl rsa -in <私钥文件> -out <新私钥文件> 2. 重新上传私钥。 |
如何处理523错误码问题?
如果同一个访问请求四次经过了WAF,为了避免出现死循环现象,WAF会拦截该请求,此时如果您访问网站会出现523错误。
您可以通过以下两种方法解决523错误码问题。
以Windows操作系统为例,配置hosts文件的操作步骤如下。
a.
用文本编辑器打开hosts文件,hosts文件一般位于“C:\Windows\System32\drivers\etc\”路径下。
b.
在hosts文件添加一条记录:域名对应的源站IP地址。
c.
保存后退出。
如何处理域名接入WAF后,登录首页不停地刷新?
域名接入WAF后,所有网站访问请求将先流转到WAF进行监控,经WAF过滤后再返回到源站服务器。对于客户端的每一个请求,WAF会根据请求访问的IP地址和用户代理(User Agent)生成一个识别码,而WAF有多个回源IP(随机分配),当回源IP发生变化时请求的识别码也会不同,将导致会话被WAF直接删除,登录首页不停地刷新,为了避免出现该问题,建议您使用会话Cookie进行会话保持。
如何解决HTTP配置转发策略后程序访问页面卡顿?
如果HTTP配置转发策略后程序访问页面卡顿,请添加HTTP到HTTP和HTTPS到HTTPS这2条转发协议规则。
有关配置转发规则的详细操作,请参见14.5.5
如何解决重定向次数过多?。
使用WAF后如何处理网站的文件不能上传?
将网站接入WAF后,网站的文件上传请求限制为10G 。
如果需要上传超过10G的文件,视频,建议不使用WAF防护的域名上传,可采用以下三种方式上传: