云服务器内容精选

  • 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所示的防护业务,用“http://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页面,原因和处理建议说明如下: 原因:网站页面不存在或已删除。 处理建议:请排查网站问题。
  • 原因二:调用了第三方接口且第三方接口也使用了华为云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;}
  • 为什么误报处理不能使用了? 误报处理不能使用时,请先确认登录管理控制台账号是否授予了使用WAF的权限,有关WAF权限的详细介绍,请参见WAF权限管理。 如果您已开通企业项目,处理误报事件时请在“企业项目”下拉列表中选择您所在的企业项目。 基于自定义规则(CC攻击防护规则、精准访问防护规则、黑白名单规则、地理位置访问控制规则等)拦截或记录的攻击事件,无法执行“误报处理”操作,如果您确认该攻击事件为误报,可在自定义规则页面,将该攻击事件对应的防护规则删除或关闭。 防护网站接入WAF后,当WAF检测到访问请求的以下参数超过512个时,WAF将判定该访问请求为非法请求并拦截该访问请求,且误报处理按钮置灰不能使用: POST/PUT使用“form-data”时,表单的参数个数多于8192个。 URL的参数个数多于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个。 URL的参数个数多于2048个。 Header个数超过512个。 “误报处理”按钮置灰不能使用,请参见配置精准访问防护规则放行该访问请求。 父主题: 误拦截正常请求排查
  • 原因一:将同一个网站接入WAF 4次以上 通过WAF的各种模式(云模式-CNAME接入、云模式-ELB接入、独享模式),将同一个网站接入WAF 4次以上。 解决办法: 梳理流量图,将用户流量绕过多余WAF,具体操作如下: 登录WAF管理控制台。 在左侧导航树中,选择“网站设置”,进入网站设置列表。 找到出现523问题的防护网站,保留一个配置,删除多余的防护网站,具体操作请参见删除防护网站。 防止删除网站后造成业务中断,在删除网站前,需要完成以下操作: 云模式:请您先到DNS服务商处将域名重新解析,指向源站服务器IP地址,否则该域名的流量将无法切回服务器,影响正常访问。 独享模式:修改ELB的后端服务器组,不再接入WAF实例节点,具体操作请参见更换后端服务器组。
  • 连接超时时长是多少,是否可以手动设置该时长? 浏览器到WAF引擎的连接超时时长默认是120秒,该值取决于浏览器的配置,该值在WAF界面不可以手动设置。 WAF到客户源站的连接超时时长默认为30秒,该值可以在WAF界面手动设置,但仅“独享模式”和“云模式”的专业版、铂金版支持手动设置连接超时时长。 在域名的基本信息页面,开启“超时配置”并单击,设置“连接超时”、“读超时”、“写超时”的时间,并单击保存设置。 父主题: 流量转发异常排查
  • 解决办法 请添加HTTP到HTTP和HTTPS到HTTPS这2条转发协议规则。具体操作如下: 登录WAF控制台。 在左侧导航栏中,选择“网站设置”,进入网站设置页面。 在接入域名列表,单击目标域名。 在“源站服务器”栏中,单击“编辑”。 在“修改服务器信息”对话框,添加HTTP到HTTP和HTTPS到HTTPS这2条转发协议规则。 图1 配置示例 有关配置转发规则的详细操作,请参见如何解决重定向次数过多?。
  • 云模式-ELB接入排查思路和处理建议 防护网站的“部署模式”为“云模式-ELB接入”时,请参考图3和表3进行排查处理。 图3 云模式-ELB接入排查思路 表3 云模式-ELB接入WAF失败问题处理 可能原因 处理建议 原因一:域名/IP“接入状态”未刷新 在防护网站“接入状态”栏,单击刷新状态。 原因二:访问流量未达到WAF统计要求 须知: 防护网站接入WAF后,当WAF统计防护网站在5分钟内有20次请求时,将认定该防护网站已接入WAF。 在1分钟内多次访问防护网站。 在防护网站“接入状态”栏,单击刷新状态。 原因三:域名/IP参数配置错误 查看域名基本信息,检查域名/IP参数是否正确。 如果域名/IP配置错误,删除该域名/IP后重新添加防护网站。
  • 独享模式排查思路和处理建议 防护网站的“部署模式”为“独享模式”时,请参考图2和表2进行排查处理。 图2 独享模式排查思路 表2 独享模式接入WAF失败问题处理 可能原因 处理建议 原因一:域名/IP“接入状态”未刷新 在防护网站“接入状态”栏,单击刷新状态。 原因二:访问流量未达到WAF统计要求 须知: 防护网站接入WAF后,当WAF统计防护网站在5分钟内有20次请求时,将认定该防护网站已接入WAF。 在1分钟内多次访问防护网站。 在防护网站“接入状态”栏,单击刷新状态。 原因三:域名/IP参数配置错误 查看域名基本信息,检查域名/IP参数是否正确。 如果域名/IP配置错误,删除该域名/IP后重新添加防护网站。 原因四:没有为独享模式实例配置负载均衡,配置的负载均衡未绑定弹性公网IP 为独享引擎实例配置负载均衡。 为弹性负载均衡绑定弹性公网IP。 原因五:独享模式实例负载均衡配置错误或负载均衡绑定弹性公网IP错误 配置负载均衡后,当WAF独享引擎实例的“健康检查结果”为“正常”时,说明弹性负载均衡配置成功。健康检查异常的排查思路请参见健康检查异常。 为弹性负载均衡绑定弹性公网IP后,可以查看绑定的弹性公网IP,说明绑定成功。
  • 如何解决重定向次数过多? 在WAF中完成了域名接入后,请求访问目标域名时,如果提示“重定向次数过多”,一般是由于您在服务器后端配置了HTTP强制跳转HTTPS,在WAF上只配置了一条HTTPS(对外协议)到HTTP(源站协议)的转发,强制WAF将用户的请求进行跳转,所以造成死循环。 可在WAF中修改服务器信息,配置两条HTTP(对外协议)到HTTP(源站协议)和HTTPS(对外协议)到HTTPS(源站协议)的服务器信息。 图1 配置示例 父主题: 流量转发异常排查
  • 如何解决证书链不完整? 如果证书机构提供的证书在用户平台内置信任库中查询不到,且证书链中没有颁发机构,则证明该证书是不完整的证书。使用不完整的证书,当用户访问防护域名对应的浏览器时,因不受信任而不能正常访问防护域名对应的浏览器。 按以下两种方法可解决此问题: 手动构造完整证书链,并上传证书。 重新上传正确的证书。 Chrome最新版本一般是支持自动验证信任链,以华为的证书为例,手工构造完整的证书链步骤如下: 查看证书并导出证书。 单击浏览器前的锁,可查看证书状况。 图1 查看证书 在“连接是安全的”所在行,单击,并单击“证书有效”。 选择“详细信息”页签,在页面右下角单击“导出”,将证书导出到本地。 查看证书链。在本地打开导出的证书,并选中“证书路径”页签,可单击证书名称查看证书状态。 图2 查看证书链 逐一将证书另存到本地。 选中证书名称,单击“详细信息”页签。 图3 详细信息 单击“复制到文件”,按照界面提示,单击“下一步”。 选择“Base64编码”,单击“下一步”,如图4所示。 图4 证书导出向导 证书重构。证书全部导出到本地后,用记事本打开证书文件,按图5重组证书顺序,完成证书重构。 图5 证书重构 重新上传证书。 父主题: 证书/加密套件问题排查
  • 解决办法 先排查源站是否出现了请求卡顿、响应变慢,或请求直接返回502/504态码。如果出现,则可能为源站容量不足。当源站负载降低、请求不再出现卡顿、请求不再返回502/504状态码,WAF对于该防护对象的熔断状态会自动恢复,不再响应“system busy”。 如果防护网站的接入模式为“独享模式”,可在WAF控制台调整“熔断保护”中的“宕机保护”和“连接保护”的相关配置值降低熔断的触发概率,具体操作请参见开启熔断保护。
  • 如何处理418错误码问题? 如果请求本身含有恶意负载被WAF拦截,此时访问WAF防护的域名时会出现418的错误。您可以通过查看WAF的防护日志,查看拦截原因。有关查看防护日志的详细操作,请参见查看防护日志。 如果您判断该请求为业务正常请求调用,可以通过误报处理操作对该路径的对应规则进行放行处理,避免同样问题再次发生。 有关处理误报事件的详细操作,请参见处理误报事件。 如果确认有问题,说明您的网站受到了攻击,并被WAF拦截。 父主题: 流量转发异常排查
  • 可能原因 防护网站开启了“JS脚本反爬虫”,由于用户的客户端浏览器没有JavaScript解析能力,客户端会缓存包含WAF返回JavaScript代码的页面,而用户每次访问防护网站时都会访问该缓存页面,WAF由此判定用户访问请求为非法的浏览器或爬虫工具,访问请求验证一直失败,造成无限循环,最终导致URI长度超出浏览器限制,访问网站失败。 开启JS脚本反爬虫后,当客户端发送请求时,WAF会返回一段JavaScript代码到客户端。如果客户端是正常浏览器访问,就可以触发这段JavaScript代码再发送一次请求到WAF,即WAF完成JS验证,并将该请求转发给源站,如图2所示。 图2 JS脚本反爬虫正常检测流程 如果客户端是爬虫访问,就无法触发这段JavaScript代码再发送一次请求到WAF,即WAF无法完成js验证。 如果客户端爬虫伪造了WAF的认证请求,发送到WAF时,WAF将拦截该请求,js验证失败。
  • 入门实践 当您将防护网站接入 Web应用防火墙 (WAF)后,可以根据自身业务场景使用WAF的一系列常用实践。 表1 常用最佳实践 实践 描述 域名接入 未使用代理的网站通过CNAME方式接入WAF 网站没有接入WAF前,DNS直接解析到源站的IP。网站接入WAF后,需要把DNS解析到WAF的CNAME,这样流量才会先经过WAF,WAF再将流量转到源站,实现网站流量检测和攻击拦截。 本文介绍通过DNS配置模式接入WAF时,如何在已添加网站配置后,配置域名解析,实现业务接入。 使用DDoS高防和WAF提升网站全面防护能力 “DDoS高防+WAF”组合可以对华为云、非华为云或云下的域名进行联动防护,同时防御DDoS攻击和Web应用攻击,确保业务持续可靠运行。 防御DDoS攻击:NTP Flood攻击、SYN Flood攻击、ACK Flood攻击、ICMP Flood攻击、HTTP Get Flood攻击等。 防御Web应用攻击:SQL注入、跨站脚本攻击、网页木马上传、命令/代码注入、文件包含、敏感文件访问、第三方应用漏洞攻击、CC攻击、恶意爬虫扫描、跨站请求伪造等。 使用CDN和WAF提升网站防护能力和访问速度 “CDN+WAF”组合可以对华为云、非华为云或云下的域名进行联动防护,同时提升网站的响应速度和网站防护能力。 使用独享WAF和7层ELB以防护任意非标端口 如果您需要防护WAF支持的端口以外的非标端口,可参考本章节配置WAF的独享模式和7层ELB联动,实现任意端口业务的防护。 CDN回源OBS桶场景下连接WAF提升OBS安全防护 当您的网站域名开启了华为云 CDN加速 ,且回源到华为云对象存储 OBS(Object Storage Service,OBS)时,如果该网站存在一定的Web攻击风险,我们推荐您组合使用CDN、OBS和Web 应用防火墙 WAF(Web Application Firewall),将开启CDN加速的域名接入WAF,实现OBS的安全防护。本文介绍如何为业务同时部署CDN、OBS、WAF。 使用WAF、ELB和NAT网关防护云下业务 WAF云模式-ELB接入默认只支持云上业务,当您的源站服务器在云下时,需要通过NAT网关进行流量转发,将您的流量由华为云内网回源到源站的公网IP,再通过云模式-ELB接入方式将网站接入WAF,实现流量检测。 策略配置 网站防护配置建议 从不同场景、角色的视角介绍Web应用防火墙(Web Application Firewall,简称WAF)的防护规则,帮助您从自己最关心的需求入手,了解WAF的防护逻辑。 使用WAF防护CC攻击 基于Web应用防火墙实践编写,指导您在遭遇CC(Challenge Collapsar)攻击时,完成基于IP限速和基于Cookie字段识别的防护规则配置。 使用WAF阻止爬虫攻击 Web应用防火墙可以通过Robot检测(识别User-Agent)、网站反爬虫(检查浏览器合法性)和CC攻击防护(限制访问频率)三种反爬虫策略,帮您解决业务网站遭受的爬虫问题。 使用Postman工具模拟业务验证全局白名单规则 当防护网站成功接入WAF后,您可以使用接口测试工具模拟用户发起各类HTTP(S)请求,验证配置的WAF防护规则是否生效,检验防护效果。 本实践以Postman工具为例,说明如何验证全局白名单(原误报屏蔽)规则。 通过WAF和HSS提升网页防篡改能力 主机安全HSS网页防篡改功能和Web应用防火墙“双剑合璧”,杜绝网页篡改事件发生。 LTS 日志分析 通过LTS查询并分析WAF访问日志 开启WAF全量日志功能后,您可以将攻击日志、访问日志记录到 云日志 服务(Log Tank Service,简称LTS)中。通过LTS记录的WAF日志数据,快速高效地进行实时决策分析、设备运维管理以及业务趋势分析。 通过LTS分析Spring core RCE漏洞的拦截情况 对WAF攻击日志开启LTS快速分析功能,通过Spring规则ID快速查询、分析被拦截的Spring core RCE漏洞日志。 通过LTS配置WAF规则的拦截告警 本实践对WAF攻击日志开启LTS快速分析功能,再配置告警规则,实现WAF规则拦截日志的分析及告警,实时洞察您的业务在WAF中的防护情况并做出决策分析。 TLS加密配置 通过配置TLS最低版本和加密套件提升客户端访问域名的通道安全 HTTPS协议是由“TLS(Transport Layer Security,传输层安全性协议)+HTTP协议”构建的可进行加密传输、身份认证的网络协议。 当域名接入WAF时,如果客户端采用HTTPS协议请求访问服务器(即防护域名的“对外协议”配置为“HTTPS”),您可以通过为域名配置最低TLS版本和加密套件来确保网站安全。 源站安全保护实践 通过WAF提升客户端访问域名的通道安全 HTTPS协议是由TLS(Transport Layer Security,传输层安全性协议)+HTTP协议构建的可进行加密传输、身份认证的网络协议。当域名接入WAF时,如果客户端采用HTTPS协议请求访问服务器,即防护域名的“对外协议”配置为“HTTPS”时,您可以通过为域名配置最低TLS版本和加密套件来确保网站安全。 通过E CS /ELB访问控制策略保护源站安全 介绍源站服务器部署在华为云弹性云服务器(以下简称ECS)、或华为云弹性负载均衡(以下简称ELB)时: 如何判断源站是否存在泄漏风险? 如何配置访问控制策略保护源站安全? 获取客户端真实IP 获取客户端真实IP 介绍通过WAF直接获取真实IP的方法,以及不同类型的Web应用服务器(包括Tomcat、Apache、Nginx、IIS 6和IIS 7)如何进行相关设置,以获取客户端的真实IP。 通过 CES 配置WAF指标异常告警 通过CES配置WAF指标异常告警 介绍如何在华为云 云监控服务 (CES)对WAF指标配置异常告警,当Web应用防火墙(WAF)的监控指标出现异常情况,及时了解WAF防护状况,从而起到预警作用。