配置DDoS高防后访问网站提示502错误

问题描述

在配置阿里云DDoS高防后,访问网站时提示502报错。

问题原因及解决方案

DDoS高防作为代理服务器尝试执行请求时,从上游服务器收到了无效的响应,导致发生502错误。因此,说明DDoS高防服务和源站之间的连接存在问题。

可能原因一:DDoS高防回源IP被源站拦截或限速

在完成网站业务切换后,网站的正常访问流量经过DDoS高防实例清洗,并由DDoS高防回源IP地址转发至源站服务器。因此,如果DDoS高防的回源地址不在源站防火墙的白名单中,访问流量可能被错误拦截,导致网站无法访问。

请参见放行DDoS高防回源IP,获取DDoS高防的回源IP网段,将回源IP网段添加至源站的防火墙、主机安全防护软件中。

可能原因二:源站本身出现异常

源站本身出现异常,将导致响应高防的请求超时,源站异常包括以下几种情况:

  • 源站IP暴露,被恶意攻击导致瘫痪。

  • 源站服务器机房物理故障。

  • 源站服务器中Apache、NginxWeb服务出现问题。

  • 服务器内存、CPU占用过高,导致性能骤降。

  • 源站上行链路拥挤阻塞。

可通过以下方法进行排查并进行处理:

  1. 修改本机hosts文件,将域名直接指向源站IP,绕过DDoS高防代理验证源站服务是否可用。

    测试结果

    说明

    直接访问源站IP失败

    问题出在源站本身,请再检查以下内容:

    1. 检查网络连通性:请参照MTR工具进行网络链路分析,验证本地到源站IP的网络链路是否畅通。

    2. 检查端口连通性:使用telnet命令测试端口连通性,验证源站是否开放了服务端口。

    直接访问源站IP成功

    请核实DDoS高防配置是否异常。

  2. 查看源站流量、请求量是否有大量增长,判断源站IP是否暴露遭受DDoS攻击。

    对比DDoS高防管理控制台中的监控,如果源站遭到大流量DDoS攻击,但DDoS高防管理控制台显示无异常,有可能是攻击绕过DDoS高防直接攻击源站。可能是源站IP暴露,被恶意攻击导致瘫痪,建议更换固定公网IP地址

    说明
    • 正常情况下,客户端请求访问DDoS高防,DDoS高防服务收到请求后把真实客户端的源IP转换成高防的回源IP(把真实客户端IP放在HTTP头部的X-Forwarded-For字段中)发送给源站。

    • 如果源站IP暴露,客户端可以直接请求访问源站,这样就绕过了DDoS高防服务提供的防护。

  3. 查看源站服务器的CPU和内存占用情况、带宽的监控情况、服务器中服务的进程状态情况等。如有异常,请根据现场实际异常的情况进行修复。

可能原因三:连接超时配置问题

DDoS高防和源站的空闲连接超时时长设置不匹配。若源站配置的超时时长小于高防,源站会先关闭连接,而高防仍认为连接有效,导致后续请求复用已关闭的连接导致触发502。

请调整空闲连接超时时长,确保源站的空闲连接超时时长大于等于DDoS高防。

可能原因四:网络出现拥塞或抖动

在已经排除以上原因后,偶发的局部网络抖动、运营商线路故障等因素,也可能导致502错误。

相关文档

配置DDoS高防后访问网站提示504错误