一键https(WAF)接入问题--请求无法正常响应

2022-01-21 12:22:06 浏览数 (2)

一、简介

腾讯云‘一键HTTPS’底层使用就是SaaS WAF,所以这里的排查思路是一致的。SaaS WAF可以理解为一个Nginx服务集群,域名接入SaaS WAF并将DNS解析到WAF CNAME后,将隐藏源站,客户端的访问流量会先经过SaaS WAF,由WAF进行对访问流量进行识别、拦截、正常流量转发回源。

SaaS WAF架构SaaS WAF架构

二、接入

接入一键HTTPS的话,可以用两种方式进行接入,一种是从SSL证书控制台中添加接入,另一种是从WAF控制台中进行接入防护。

(一)SSL证书控制台接入

由于一键https主要是为了快速部署 HTTPS 功能,实现 HTTP 自动跳转到 HTTPS,所以文档主要是介绍接入,不介绍攻击测试、防止解析绕过等操作。详细参考文档:https://cloud.tencent.com/document/product/400/58062。

(二)WAF控制台接入

接入WAF是为了防护web攻击,所以接入文档除了介绍接入配置外,还会详细介绍测试验证、防止流量绕过WAF等配置操作。详细参考文档:https://cloud.tencent.com/document/product/627/40763。

三、请求无法正常响应:

(一)问题现象:

域名www.a.com解析到一键https(waf)的cname,访问http://www.a.com或https://www.a.com时,报错“很抱歉,你提交的请求无法正常响应,请联系网站管理员处理”,且显示是WAF的提示页面,如下图:

错误页面错误页面

(二)初步分析

访问出现waf提示页面:“很抱歉,你提交的请求无法正常响应,请联系网站管理员处理”,一般是waf集群无法成功回源到源站或waf后台配置问题导致,需要详细测试分析。

(三)详细排查思路流程

‘提交的请求无法正常响应’排查流程‘提交的请求无法正常响应’排查流程

(四)部分排查步骤思路

详细流程参考上一小节,这里介绍其中的部分操作:

1、浏览器按F12打开‘开发者模式’,看Headers的Status Code,核实状态码是5xx还是400;如果是https协议访问的,顺便核实证书是客户域名的证书还是*.qcloudzygj.com的证书;

F12查看请求响应信息F12查看请求响应信息

2、核实回源协议和回源端口,下列三张图片分别是一键https、waf控制台和waf运营平台的截图:

一键https控制台配置截图一键https控制台配置截图
WAF控制台配置截图WAF控制台配置截图
WAF运营平台截图WAF运营平台截图

3、可以用nmap等工具测试端口连通性,Nmap检测命令:nmap -p80,443 -Pn IP地址 ,其中参数-p80,443 指的是检测80和443端口

nmap测试端口连通性nmap测试端口连通性

4、通过Hosts文件绑定源站IP,并使用回源协议和端口访问客户域名,核实是否可以正常访问、页面是否正常;

(1)如果在Windows系统进行访问测试的话:需要修改文件C:WindowsSystem32driversetchosts,新增条目;格式为:IP地址 接入WAF的域名

windows hosts文件配置windows hosts文件配置

在windows环境测试时,建议使用浏览器的无痕模式进行测试,避免由于DNS缓存、页面缓存等影响测试结果;修改解析后,也需要关闭重新打开无痕模式再进行测试。

(2)如果在Linux系统进行访问测试的话,需要修改/etc/hosts,增加条目;格式:IP 地址 接入WAF的域名

linux hosts文件配置linux hosts文件配置

5、一键https/WAF上配置的源站的安全组务必开放给WAF控制台上的‘回源保护地址’,建议是只开放给‘回源保护地址’,其余拒绝;同时WAF和源站中间如果还有其他安全设备也需要放通。

WAF控制台查看防护域名对应的’回源保护地址‘WAF控制台查看防护域名对应的’回源保护地址‘

(1)腾讯云CVM的安全组管理配置参考:

https://cloud.tencent.com/document/product/213/12446

(2)轻量应用服务器配置防火墙参考文档:

https://cloud.tencent.com/document/product/1207/44577

欢迎沟通交流

0 人点赞