云服务器内容精选

  • 独享模式排查思路和处理建议 防护网站的“部署模式”为“独享模式”时,请参考图2和表2进行排查处理。 图2 独享模式排查思路 表2 独享模式接入WAF失败问题处理 可能原因 处理建议 原因一:域名/IP“接入状态”未刷新 在防护网站“接入状态”栏,单击刷新状态。 原因二:访问流量未达到WAF统计要求 须知: 防护网站接入WAF后,当WAF统计防护网站在5分钟内有20次请求时,将认定该防护网站已接入WAF。 在1分钟内多次访问防护网站。 在防护网站“接入状态”栏,单击刷新状态。 原因三:域名/IP参数配置错误 查看域名基本信息,检查域名/IP参数是否正确。 如果域名/IP配置错误,删除该域名/IP后重新添加防护网站。 原因四:没有为独享模式实例配置负载均衡,配置的负载均衡未绑定弹性公网IP 为独享引擎实例配置负载均衡。 为弹性负载均衡绑定弹性公网IP。 原因五:独享模式实例负载均衡配置错误或负载均衡绑定弹性公网IP错误 配置负载均衡后,当WAF独享引擎实例的“健康检查结果”为“正常”时,说明弹性负载均衡配置成功。健康检查异常的排查思路请参见健康检查异常。 为弹性负载均衡绑定弹性公网IP后,可以查看绑定的弹性公网IP,说明绑定成功。
  • 云模式-ELB接入排查思路和处理建议 防护网站的“部署模式”为“云模式-ELB接入”时,请参考图3和表3进行排查处理。 图3 ELB模式排查思路 表3 ELB模式接入WAF失败问题处理 可能原因 处理建议 原因一:域名/IP“接入状态”未刷新 在防护网站“接入状态”栏,单击刷新状态。 原因二:访问流量未达到WAF统计要求 须知: 防护网站接入WAF后,当WAF统计防护网站在5分钟内有20次请求时,将认定该防护网站已接入WAF。 在1分钟内多次访问防护网站。 在防护网站“接入状态”栏,单击刷新状态。 原因三:域名/IP参数配置错误 查看域名基本信息,检查域名/IP参数是否正确。 如果域名/IP配置错误,删除该域名/IP后重新添加防护网站。
  • 为什么需要放行回源IP段? WAF实例的IP数量有限,且源站服务器收到的所有请求都来自这些IP。在源站服务器上的安全软件很容易认为这些IP是恶意IP,有可能触发屏蔽WAF回源IP的操作。一旦WAF的回源IP被屏蔽,WAF的请求将无法得到源站的正常响应,因此,在接入WAF防护后,您需要在源站服务器的安全软件上设置放行所有WAF回源IP,不然可能会出现网站打不开或打开极其缓慢等情况。 网站接入WAF后,建议您卸载源站服务器上的其他安全软件,或者配置只允许来自WAF的访问请求访问您的源站,这样既可保证访问不受影响,又能防止源站IP暴露后被黑客直接攻击。
  • 什么是回源IP? 回源IP是WAF用来代理客户端请求服务器时用的源IP,在服务器看来,接入WAF后所有源IP都会变成WAF的回源IP,而真实的客户端地址会被加在HTTP头部的XFF字段中。 WAF的回源IP会因为扩容/新建集群而增加,对于一个客户的存量域名,一般回源IP会固定在2~4个集群的几个C类IP地址(192.0.0.0~223.255.255.255)上。 一般情况下,在没有灾备切换或其他调度切换集群的场景下,回源IP不会变。且WAF后台做集群切换时,会探测源站安全组配置,确保不会因为安全组配置导致业务整体故障。 图1 回源IP
  • 原因一:将同一个网站接入WAF 4次以上 通过WAF的各种模式(云模式-CNAME接入、云模式-ELB接入、独享模式),将同一个网站接入WAF 4次以上。 解决办法: 梳理流量图,将用户流量绕过多余WAF,具体操作如下: 登录WAF管理控制台。 在左侧导航树中,选择“网站设置”,进入网站设置列表。 找到出现523问题的防护网站,保留一个配置,删除多余的防护网站,具体操作请参见删除防护网站。 防止删除网站后造成业务中断,在删除网站前,需要完成以下操作: 云模式:请您先到DNS服务商处将域名重新解析,指向源站服务器IP地址,否则该域名的流量将无法切回服务器,影响正常访问。 独享模式:修改ELB的后端服务器组,不再接入WAF实例节点,具体操作请参见更换后端服务器组。
  • 原因二:调用了第三方接口且第三方接口也使用了华为云WAF 将用户的请求在转发给第三方接口时仅修改了host,而header、cookie执行了原样转发,导致保留了WAF原有的计数器。 解决办法: 修改反向代理请求中的header字段,具体操作如下: 用户的流量链路上,在WAF后如果有NGINX,才可用此方法。 通过使用“proxy_set_header”来重定义发往代理服务器的请求头,执行以下命令打开nginx配置文件。 以Nginx安装在“/opt/nginx/”目录为例,具体情况需要依据实际目录调整。 vi /opt/nginx/conf/nginx.conf 在nginx配置文件中加入proxy_set_header X-CloudWAF-Traffic-Tag 0;,示例如下: location ^~/test/ { ...... proxy_set_header Host $proxy_host; proxy_set_header X-CloudWAF-Traffic-Tag 0; ...... proxy_pass http://x.x.x.x; }
  • 404 Not Found错误排查思路和处理建议 网站接入WAF后,访问网站时出现404 Not Found错误,请参考图1进行排查处理。 图1 404错误排查思路 如果访问网站返回如图2所示页面,原因和处理建议说明如下: 图2 404页面 原因一:添加防护域名到WAF时,配置了非标准端口,例如配置了如图3所示的非标准端口业务,访问网站时未加端口用“https://www.example.com”或者“https://www.example.com:80”访问网站。 图3 非标准端口配置 处理建议:在访问链接后加上非标准端口,再次访问源站,如“https://www.example.com:8080”。 原因二:添加防护域名到WAF时,没有配置非标准端口,访问时使用了非标准端口或者“源站端口”配置的非标准端口,例如配置了如图4所示的防护业务,用“https://www.example.com:8080”访问网站。 图4 未配置非标准端口 没有配置非标准端口的情况下,WAF默认防护80/443端口的业务。其他端口的业务不能正常访问,如果您需要防护其他非标准端口的业务,请重新进行域名配置。 处理建议:直接访问网站域名,如“https://www.example.com”。 原因三:域名解析错误。 处理建议: 如果该域名已添加到WAF进行防护,参照域名解析重新完成域名接入的操作,使流量经过WAF进行转发。 如果该域名未添加到WAF进行防护,需要在DNS服务商处将域名解析到源站的IP。 原因四:用户 多个域名 走同个WAF集群回源到同一个后端HTTPS源站+端口,由于WAF回源是长连接复用的,后端源站节点无法分辨是哪个域名(nginx通过Host和SNI分辨),会有一定几率出现A域名的请求转发到B域名的后端,所以会出现404。 处理建议:修改域名在WAF的后端配置,不同的域名走不同的源站端口进行规避。 如果访问网站时,返回的不是图2所示的404页面,原因和处理建议说明如下: 原因:网站页面不存在或已删除。 处理建议:请排查网站问题。
  • 504 Gateway Timeout错误排查思路和处理建议 完成WAF域名接入配置之后,业务正常,但当业务量增加时,发生504错误的概率增加,直接访问源站IP也有一定概率出现504错误,请参考图8进行排查处理。 图8 504错误排查思路 表2 504错误问题处理 可能原因 排查方法 处理建议 原因一:后端服务器性能问题(连接数,CPU内存占用过大等) 源站性能问题,可以排查源站访问日志以及访问流量情况,定性分析。 优化服务器的相关配置,包括TCP网络参数的优化配置,ulimit相关参数设置等。 如果是云模式部署方式,建议在ELB上增加后端服务器组或创建新的ELB,支撑大量增长的业务量。 增加后端服务器组的详细操作,请参见添加后端云服务器(共享型)。 配置新ELB的操作,请参考步骤 1~步骤 7。 如果“对外协议”是HTTPS,建议在WAF设置HTTPS转发,回源走HTTP协议即“源站协议”设置为HTTP,降低后端服务器的计算压力。 修改服务器信息的详细操作,请参见修改服务器信息。 使用CC防护规则,拦截恶意流量。 原因二: 安全组未将WAF回源IP设置为白名单或未放开端口 源站有防火墙设备,且该防火墙设备拦截了WAF的回源IP 建议采用以下方法进行排查: 排查客户源站是否有安全组,防火墙,服务器安全软件等。 在客户端与WAF上同时进行抓包分析,排查源站防火墙等设备对WAF的长连接是否有主动丢包的现象。 源站服务器配置放行WAF回源IP的访问控制策略。 云模式:请参见如何放行云模式WAF的回源IP段?。 独享模式:请参见放行独享引擎回源IP。 建议您关闭防火墙和服务器安全防护软件。 原因三:连接超时、read超时 说明: 源站响应时间过长导致504(数据库查询时间过长,大文件上传时间过长,源站故障等)。 WAF回源到客户源站超时时间大多为60秒或180秒,若超时则会报错504。 该问题有以下排查方法: 绕过WAF,直接访问客户源站,查看响应时长 查看全量日志里面访问日志源站响应时长 建议客户绕过WAF测试上传功能,并检查客户上传文件大小 数据库查询时间过长: 调整优化业务,尽量缩短查询时长,优化用户体验。 修改请求的交互方式,让这种长连接在 60s 内能有一些数据交互(如,ack报文、心跳包、keep-alive等任何可以维持会话的报文)。 大文件上传时间过长: 调整优化业务,尽量缩短文件上传时间。 建议使用FTP方式上传文件。 直接通过IP上传,或者使用没有被WAF防护的域名上传。 使用WAF的独享模式,独享WAF回源超时默认为180s。 源站故障类: 检查源站业务是否正常。 原因四:源站带宽不足,访问流量过大,带宽超限制 该问题有以下排查方法: 若客户配置的WAF后端为7层ELB,则可以在ELB上查504相关日志 若客户配置的WAF后端为4层ELB,则可以在ELB上查“Traffic exceeded the bandwidth threshold”相关字段日志 若客户配置的WAF后端为EIP,则在504高峰查看EIP流量监控。 扩展源站服务器带宽。 创建新的ELB,参照以下方法将ELB的EIP作为服务器的IP地址,接入WAF。 修改服务器信息,大约需要2分钟同步生效。 创建负载均衡器。 登录管理控制台。 进入网站设置页面入口,如图9所示。 图9 网站设置入口 在目标域名所在行的“防护网站”列中,单击目标域名,进入域名基本信息页面。 在“服务器信息”栏中,单击,进入“修改服务器信息”页面,单击“添加”,新增后端服务器。 图10 服务器配置 将“源站地址”设置为ELB的弹性公网IP地址。 单击“确定”,服务器信息修改成功。
  • 可能原因 防护网站开启了“JS脚本反爬虫”,由于用户的客户端浏览器没有JavaScript解析能力,客户端会缓存包含WAF返回JavaScript代码的页面,而用户每次访问防护网站时都会访问该缓存页面,WAF由此判定用户访问请求为非法的浏览器或爬虫工具,访问请求验证一直失败,造成无限循环,最终导致URI长度超出浏览器限制,访问网站失败。 开启JS脚本反爬虫后,当客户端发送请求时,WAF会返回一段JavaScript代码到客户端。如果客户端是正常浏览器访问,就可以触发这段JavaScript代码再发送一次请求到WAF,即WAF完成JS验证,并将该请求转发给源站,如图2所示。 图2 JS脚本反爬虫正常检测流程 如果客户端是爬虫访问,就无法触发这段JavaScript代码再发送一次请求到WAF,即WAF无法完成js验证。 如果客户端爬虫伪造了WAF的认证请求,发送到WAF时,WAF将拦截该请求,js验证失败。
  • 为什么误报处理不能使用了? 误报处理不能使用时,请先确认登录管理控制台账号是否授予了使用WAF的权限,有关WAF权限的详细介绍,请参见WAF权限管理。 如果您已开通企业项目,处理误报事件时请在“企业项目”下拉列表中选择您所在的企业项目。 基于自定义规则(CC攻击防护规则、精准访问防护规则、黑白名单规则、地理位置访问控制规则等)拦截或记录的攻击事件,无法执行“误报处理”操作,如果您确认该攻击事件为误报,可在自定义规则页面,将该攻击事件对应的防护规则删除或关闭。 防护网站接入WAF后,当WAF检测到访问请求的以下参数超过512个时,WAF将判定该访问请求为非法请求并拦截该访问请求,且误报处理按钮置灰不能使用: POST/PUT使用“form-data”时,表单的参数个数多于8192个。 URI的参数个数多于2048个。 Header个数超过512个。 图1 非法请求被WAF拦截 有关非法请求的处理建议,请参见WAF误拦截了“非法请求”访问请求,如何处理?。 父主题: 业务中断排查
  • WAF误拦截了正常访问请求,如何处理? 当WAF根据您配置的防护规则检测到符合规则的恶意攻击时,会按照规则中的防护动作(仅记录、拦截等),在“防护事件”页面中记录检测到的攻击事件。 如果您已开通企业项目,请务必在“企业项目”下拉列表中选择您所在的企业项目并确保已开通操作权限,才能处理该企业项目下的误报事件。有关企业项目的详细介绍,请参见管理项目和企业项目。 在误拦截事件所在行的“操作”列中,单击“详情”,查看事件详细信息。如果确认该防护事件为误报事件时,您可以参照表1对该事件进行误报处理。处理后,WAF将不再拦截该事件,即“防护事件”页面中将不再显示该攻击事件,您也不会收到该攻击事件的告警通知。 表1 误报处理说明 命中规则类型 命中规则 处理方式 WAF内置防护规则 Web基础防护规则 防范SQL注入、XSS跨站脚本、远程溢出攻击、文件包含、Bash漏洞攻击、远程命令执行、目录遍历、敏感文件访问、命令/代码注入等常规的Web攻击,以及Webshell检测、深度反逃逸检测等Web基础防护。 网站反爬虫的“特征反爬虫”规则 可防护搜索引擎、扫描器、脚本工具、其它爬虫等爬虫。 在该攻击事件所在行的“操作”列,单击“误报处理”,详细操作请参见处理误报事件。 自定义防护规则 CC攻击防护规则 精准访问防护规则 黑白名单规则 地理位置访问控制规则 网页防篡改规则 网站反爬虫的“JS脚本反爬虫”规则 防敏感信息泄露规则 隐私屏蔽规则 在拦截该攻击事件的防护规则页面,删除对应的防护规则。 其他 “非法请求”访问请求 说明: 当遇到以下情况时,WAF将判定该访问请求为非法请求并拦截该访问请求: POST/PUT使用“form-data”时,表单的参数个数多于8192个。 URI的参数个数多于2048个。 Header个数超过512个。 “误报处理”按钮置灰不能使用,请参见配置精准访问防护规则放行该访问请求。 父主题: 业务中断排查