文档简介:
上传HTTPS证书时提示上传失败是什么原因?
Web应用防火墙(边缘云版)支持上传客户自有的HTTPS证书,一般证书上传失败主要有以下几种原因:
证书格式错误
当前只支持PEM格式的证书上传,上传证书失败往往是证书格式错误的原因,请仔细核对证书格式再重新上传。
PEM格式证书文件示例:
PEM格式证书私钥示例:
证书与密钥不匹配
请检查证书的证书文件私钥文件的MD5值是否相同,如果MD5值不同则表明证书文件和私钥文件内容不匹配。
您可以执行openssl x509 -noout -modulus -in <文件>|openssl md5命令,分别查看证书文件和私钥文件的MD5值,如果MD5值不同请检查证书内容确认MD5一致后在重新上传。
上传文件的正常请求被Web应用防火墙(边缘云版)拦截了怎么办?
正常的上传请求被Web应用防火墙(边缘云版)拦截一般分为以下两种情况
1、Web应用防火墙(边缘云版)防护节点最大支持300MB的文件上传,当上传大于300MB的文件时就可能会上传失败。建议使用未接入Web应用防火墙(边缘云版)防护的域名上传或者通过FTP攻击上传。
2、通过浏览器POST请求上传文件时,文件内容会被转码后放在POST请求的body中上传,当转码后的文件出现匹配Web应用防火墙(边缘云版)规则的关键字内容时就有可能被Web应用防火墙(边缘云版)认为有恶意代码触发拦截。遇到这种情况建议将该URL加入到访问控制白名单的放行规则中。
出现登录状态丢失的情况如何解决?
当接入Web应用防火墙(边缘云版)的域名存在多个源站时,多个源站之间要做登录session同步,不然有可能出现同一个会话请求转发到不同的源站导致登录状态丢失的情况。另外,如果源站有基于访问IP做会话验证时要通过从请求头的x-forwarded-for中获取到客户端请求的真实IP进行校验。
出现长连接请求超时如何处理?
如果源站由于某种原因响应慢,超过边缘安全防护节点回源超时时间设置仍未向边缘节点返回内容,则会出现504报错。出现这种情况时,可先排查源站服务器是否有出现CPU或者带宽瓶颈,其次源站处理请求的逻辑入手看是否可以优化提升源站的处理速度,如果确认源站已经无法优化响应速度,可通过修改防护节点默认回源超时时长来缓解该问题,具体可提交工单联系天翼云客服进行配置。
出现Android客户端或小程序访问异常怎么办?
域名接入WAF后如果出现部分客户端访问异常的情况。比如PC浏览器访问正常,但是Android版微信访问域名出现一片空白或者小程序访问异常,遇到这种情况可通过以下步骤排查:
排查HTTPS证书是否有问题
检查是否为HTTPS协议访问的域名,如果是请检查HTTPS证书是否有效,证书失效时要及时更新证书。同时检查证书链是否完整,如果证书链不完整,请重新上传证书链完整的证书。
判断请求是否被WAF拦截
如果请求返回403状态码,那有可能是被WAF防护引擎拦截了。可通过Web应用防火墙控制台的“WAF攻击日志”页面查看是否对应的拦截信息,通过日志判断被拦截的原因,如果确认为误拦截可添加对应的白名单规则放行。
出现网站访问异常的情况如何处理?
网站接入Web应用防火墙(边缘云版)之后出现访问异常的情况,一般可以通过以下流程进行排查修复:
检查源站是否正常
可通过直接将域名指向源站IP的方式(修改本机HOSTS文件),不经过Web应用防火墙(边缘云版)防护节点直接访问源站,确认源站能否正常响应。如果直接访问源站也访问异常,证明是源站本身存在问题,需要到源站排查定位问题并修复处理。
检查是否被Web应用防火墙(边缘云版)服务误拦截
可通过Web应用防火墙(边缘云版)控制台的“日志管理 > WAF攻击日志”页面查看是否相关的攻击日志记录,如果有对应的攻击记录并分析确认该请求为正常请求则可通过添加白名单规则的方式放行请求。如果没有相关攻击日志记录,可进一步到“域名列表 >安全防护 > 安全基础配置”页面将防护模式开关修改成关闭,然后再尝试访问网站,如果访问异常的情况依旧存在,则证明不是Web应用防火墙(边缘云版)防护影响的异常,需要从其他方面排查。
常见请求错误的排查定位
- 400 Bad Request :客户端请求提交的内容不符合源站程序的校验,请检查请求格式和源站要求的校验格式是否一致。
- 413 Request Entity Too Large :请求体太大超过服务器限制,请检查源站的网关和WEB服务器限制的请求大小是否需要调大。
- 502 Bad Gateway:网关错误,请检查源站是否异常,如果直接访问源站正常,则检查是否有黑名单、iptables等防火墙限制了防护节点的回源请求。
- HTTPS访问异常:确认上传到WAF控制台的HTTPS证书是否失效,检查HTTPS证书链是否完整。
HTTPS访问异常如何定位问题?
网站接入Web应用防火墙(边缘云版)之后,如果出现HTTP请求访问正常但是HTTPS请求访问失败的情况,可能有以下几点原因
未在网站接入时开启HTTPS功能
网站要支持HTTPS访问,需要在接入Web应用防火墙(边缘云版)服务时配置请求协议开启HTTPS,并上传对应的HTTPS证书。域名接入后也可以通过Web应用防火墙(边缘云版)控制台“域名列表 > 接入配置”页面开启HTTPS协议。
在Web应用防火墙(边缘云版)控制台配置的证书过期,或证书与域名不匹配
如有启用HTTPS,则检查配置证书是否过期,或证书不匹配、证书错误。如为上述情况,则替换为新证书、正确证书即可。具体操作为:在【域名管理】-【域名列表】选择对应域名,在【HTTPS配置】中,【证书备注名】,【点击上传】,上传新证书后,选择新证书备注名,单击【提交保存】即可
证书链不完整,HTTPS中间证书配置错误
中间证书是根证书颁发机构CA对中间证书颁发机构的公钥进行数字签名得到的证书。其作用是通过中间证书的私钥来签署最终用户的SSL证书,通过中间根对另一个中间根进行签名,然后CA使用它来对证书进行签名。主流浏览器如Firefox或者Chrome对未安装中间证书的网站可能会作出此链接不受信任的提示,或者安装了安全证书的网站,用手机访问时还是会出现不安全的提示,这些情况都很可能是中间证书链不完整导致的。在WAF控制台上传证书时在证书公钥(PEM格式)输入框输入域名证书拼接中间证书即可,具体拼接格式如下:
-----BEGIN CERTIFICATE-----
域名证书
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
中间证书
-----END CERTIFICATE-----
客户端不兼容SNI导致访问异常怎么办?
SNI(Server Name Indication)是为了解决一个服务器使用多个域名和证书的问题。而对SSL/TLS协议所作的一个扩展,它允许服务器在同一个IP地址和TCP端口下支持多个证书,从而允许多个HTTPS网站使用相同的源站IP和端口。在接入Web应用防火墙(边缘云版)后,如果您出现部分客户端HTTPS访问异常问题,可能是由于有些客户端版本不支持SNI导致的。当使用不支持SNI的浏览器或客户端访问接入Web应用防火墙(边缘云版)服务的网站时,Web应用防火墙(边缘云版)防护节点不知道客户端请求的是哪个域名,所以无法正确得获取域名对应得证书来跟客户端通讯交互,此时在浏览器上就会出现“服务器证书不可信”的提示。
实际场景中,一般是只有部分旧版的PC浏览器和Android客户端不支持SNI。如果客户端不支持SNI扩展,建议通过以下方式来解决:
- 建议升级客户端版本,或使用新版本的浏览器访问,比如使用Chrome、Firefox等新版本的浏览器访问。
- 第三方程序回调的业务场景,如果第三方程序客户端不支持SNI,可建议让其直接请求访问源站IP,绕过Web应用防火墙(边缘云版)。