阿里云Web应用防火墙(WAF)配置完全指南:从接入到深度防护

apphuang2026年07月03日 17:48:183

引言:为什么需要Web应用防火墙

在今天的互联网环境中,Web应用面临着层出不穷的安全威胁——SQL注入、跨站脚本攻击(XSS)、WebShell上传、CC攻击、爬虫滥用等。阿里云Web应用防火墙(WAF)作为一款云原生的Web安全防护产品,能够有效识别和阻断这些攻击,保护您的网站和API接口安全。本文将从零开始,系统性地讲解阿里云WAF的配置方法,涵盖从接入、基础防护到深度定制的完整流程。

需要先登录阿里云控制台,点击:阿里云控制台

一、WAF接入方式详解

在配置任何防护策略之前,首先需要将您的网站或云产品接入WAF。阿里云WAF 3.0主要支持两种接入方式:云产品接入(透明代理模式)和CNAME接入(反向代理模式)。选择哪种方式取决于您的业务架构和运维偏好。

1.1 云产品接入(透明代理模式)

云产品接入是WAF 3.0主推的接入方式,适用于部署在阿里云ECS、SLB(含ALB)、等云产品上的业务。这种方式的核心理念是“无需修改DNS解析”——您只需在WAF控制台配置需要防护的云产品实例及其引流端口,系统会自动调整底层网络路由策略,将该端口上的公网流量引导至WAF进行安全检测。

云产品接入的具体操作步骤如下:

登录Web应用防火墙3.0控制台,在顶部菜单栏选择资源组和地域(中国内地或非中国内地),然后在左侧导航栏单击\"接入管理\"。选择\"云产品接入\"页签,在左侧云产品类型列表中选择对应的云产品类型(如云服务器ECS、应用型负载均衡ALB等)。

如果是首次配置,需要根据页面提示完成云产品授权——单击\"立即授权\",系统会自动创建服务关联角色AliyunServiceRoleForWAF。授权完成后,在右侧列表中找到目标实例,单击\"立即接入\"。如果找不到目标实例,可以单击页面右上角的\"同步资产\"刷新列表。

在选择需要添加的实例和端口区域,单击\"添加端口\",根据网站的端口与协议类型进行配置。标准HTTP网站使用80端口,标准HTTPS网站使用443端口。如果网站使用非标准端口(如8080、8443等),则需要按实际端口填写。对于HTTPS端口,还需要上传或选择SSL证书。云产品接入的防护范围覆盖指定端口上的所有域名,甚至支持仅使用公网IP(无域名)的业务。

需要注意的是,云产品接入对ECS实例有一定的地域限制:中国内地支持西南1(成都)、华北2(北京)、华北3(张家口)、华东1(杭州)、华东2(上海)、华南1(深圳)、华北1(青岛);非中国内地支持中国(香港)、马来西亚(吉隆坡)、印度尼西亚(雅加达)、新加坡。接入过程中,Web业务可能出现短暂的秒级连接中断,建议在业务低峰期进行操作。

1.2 CNAME接入(反向代理模式)

CNAME接入是另一种经典的WAF接入方式,适用于部署在阿里云之外(如IDC机房、其他云平台)的网站业务。在这种模式下,您需要将要防护的网站域名添加到WAF,WAF会为该域名分配一个专用的CNAME地址。然后,您需要到域名DNS解析服务商处,将网站域名的解析记录修改为WAF提供的CNAME地址。

配置CNAME接入时,需要填写以下关键信息:防护的网站域名、协议类型(HTTP/HTTPS)、源站服务器地址(IP或域名)、服务器端口、负载均衡算法(多源站时)等。如果网站业务在接入WAF前已经使用了其他七层代理服务(如CDN、DDoS高防),需要在配置中开启\"WAF前是否有七层代理\"选项。

完成域名添加后,复制WAF分配的CNAME地址(格式如 pf5**.yundunwaf3.com),前往DNS服务商添加一条CNAME记录。如果使用阿里云云解析DNS,可直接在云解析DNS控制台操作。

1.3 两种接入方式的对比与选择

云产品接入与CNAME接入的核心区别在于:云产品接入无需修改DNS解析,配置更简单,但仅支持部署在阿里云特定地域的ECS、SLB等云产品;CNAME接入需要修改DNS解析,配置稍复杂,但支持任意位置的源站(包括云下IDC)。云产品接入可以按实例维度接入该实例下的所有域名,而CNAME接入一次只能接入一个域名。此外,云产品接入无需额外设置源站保护(因为流量不经过公网DNS解析),而CNAME接入需要放行WAF的回源IP段,避免源站直接暴露被攻击。

二、规则防护引擎:第一道防线

完成网站接入后,WAF默认开启规则防护引擎,为网站提供基础的Web攻击防护。规则防护引擎基于内置的专家经验规则集,自动防御SQL注入、XSS跨站、WebShell上传、命令注入、路径穿越、常见应用漏洞攻击等。

2.1 防护模式的选择:拦截与告警

规则防护引擎提供两种防护模式:

  • 拦截模式:WAF自动拦截检测到的攻击请求,并在后台记录攻击日志。这是生产环境推荐使用的模式。
  • 告警模式:WAF不会拦截攻击请求,仅在后台记录攻击日志。适用于初次接入WAF、尚不清楚业务流量特征的场景。

对于初次接入WAF的用户,建议先使用告警模式观察一至两周。通过分析告警模式下的攻击日志,确认没有正常业务流量被误拦截后,再切换到拦截模式。

2.2 防护规则组的选择

WAF提供了三种预置的防护规则组,分别对应不同的检测强度:

  • 宽松规则组:防护粒度较粗,只拦截攻击特征非常明显的请求,误拦截概率最低。
  • 中等规则组(默认):防护粒度较宽松且防护规则策略精准,可以拦截常见的具有绕过特征的攻击请求,是大多数场景的推荐选择。
  • 严格规则组:防护粒度最精细,可以拦截具有复杂绕过特征的攻击请求,但误拦截概率相对更高。

如果您的业务对可用性要求极高、不能接受任何误拦截,可以先从宽松规则组开始;如果您的业务面临较高安全风险且可以接受少量误拦截后的调优,可以选择严格规则组。对于已开通企业版或旗舰版的用户,还可以自定义防护规则组,自由组合WAF提供的所有防护规则。

2.3 误拦截的排查与处理

当规则防护引擎误拦截了正常业务请求时,可以通过以下方式处理:

首先,在WAF控制台的\"安全报表\"中查看被拦截的请求日志,确认具体的拦截规则ID。然后,可以创建自定义规则组,将导致误拦截的特定规则排除,而不需要关闭整体防护。另外,也可以通过配置Web入侵防护白名单,让满足特定条件的请求跳过规则防护引擎的检测。

三、自定义防护策略:精准控制

除了规则防护引擎的通用防护外,WAF还提供了自定义防护策略功能,允许您基于精确匹配条件构建个性化的防护规则。自定义防护策略主要分为两种类型:

  • ACL访问控制规则:根据客户端IP、请求URL、请求头字段等定义精确匹配条件,对命中条件的请求执行放行、拦截、观察等动作。
  • CC攻击防护规则(频率控制规则):在精确匹配条件的基础上,增加访问频率检测,对高频访问的请求进行限速或封禁。

3.1 访问控制规则配置示例

访问控制规则适用于盗链防护、后台管理页面保护、特定User-Agent拦截等场景。以下是几个典型的配置示例:

示例一:拦截特定IP地址段的访问

匹配条件:客户端IP 属于 192.168.1.0/24。规则动作:拦截。

示例二:放行搜索引擎爬虫

匹配条件:User-Agent 包含 Googlebot。规则动作:放行。

示例三:拦截空User-Agent的请求

匹配条件:User-Agent 为空。规则动作:拦截。

在配置匹配条件时,每个条件由匹配字段、逻辑符和匹配内容三部分组成。一个规则最多可以添加五个条件,多个条件之间为\"逻辑与\"关系——请求必须满足所有条件才能命中规则。

3.2 频率控制规则配置示例

频率控制规则是防御CC攻击的核心手段。其工作逻辑是:在请求命中精确匹配条件后,进一步统计该请求的访问频率,当频率超过设定的阈值时执行相应的处置动作。

示例一:全站IP限速(中小站点预防性配置)

统计对象:IP。统计时长:30秒。阈值:1000次。处置动作:封禁。超时时间:36000秒(10小时)。配置此规则后,同一IP在30秒内请求超过1000次则封禁该IP的请求10个小时。

示例二:登录接口精细化限速

匹配条件:请求路径 包含 /login.php。统计对象:IP。统计时长:60秒。阈值:20次。处置动作:封禁。超时时间:1800秒(30分钟)。此规则可以有效防御针对登录接口的暴力破解和撞库攻击。

示例三:基于Cookie的用户级限速(旗舰版专属)

对于存在NAT出口的场景,封禁IP会影响大量正常用户。旗舰版WAF支持使用自定义统计对象字段,例如基于Cookie中的用户ID进行频率统计。统计对象选择\"自定义Cookie\",Cookie名称设置为uid,按Cookie中的uid值分别统计请求频率。这样即使多个用户共享同一公网IP,也只有异常高频的特定用户会被限速。

在配置频率控制规则时,处置动作的选择需要特别注意:滑块和严格滑块验证适用于网页/H5场景,用于校验请求是否来自真实浏览器;对于原生App、API等非浏览器环境,应设置为阻断。

四、CC攻击防护:深度防御

CC攻击(Challenge Collapsar)是DDoS攻击的一种,通过持续发送高并发请求耗尽服务器资源。WAF提供了多层次的CC攻击防护能力。

4.1 CC安全防护(默认开启)

网站接入WAF后,CC安全防护默认开启。该功能基于CC流量特征进行自动检测和拦截,无需手动配置即可提供基础防护。

4.2 自定义CC防护策略

当默认的CC防护无法满足业务需求时,可以通过自定义防护策略中的频率控制规则实现更精细化的防护。前文3.2节中的配置示例均属于自定义CC防护策略的范畴。

4.3 地域级IP黑名单

对于面向中国用户的网站,CC攻击中很大比例的攻击来源于海外IP、公有云IP或IDC机房IP。在这种情况下,可以通过地域级IP黑名单功能直接封禁中国境外的IP地址访问。在地域级IP黑名单配置页面,选择\"中国境外\"页签,勾选\"全选\"复选框即可将中国境外的所有国家和地区加入封禁列表。

4.4 扫描防护

扫描防护功能可以帮助网站自动阻断包含指定特征的访问请求,例如请求源IP在短期内发起多次Web攻击或目录遍历攻击。该功能对于防御自动化扫描工具的攻击非常有效。

五、日志、监控与告警

WAF的防护效果需要通过持续的监控和日志分析来评估和优化。阿里云WAF深度集成了日志服务(SLS),为您提供强大的日志查询、分析和告警能力。

5.1 开启WAF日志服务

在WAF控制台的\"日志服务\"页面,从域名下拉列表中选择要开启日志采集的网站域名,打开状态开关即可开启该域名的日志采集功能。开启后,WAF会将防护域名的请求日志实时采集并存储到日志服务中。

5.2 日志查询与分析

在日志服务中,您可以使用标准的SQL查询语句对WAF日志进行复杂的查询和分析。例如,查询最近一小时内被WAF拦截的所有请求:

* | SELECT COUNT(*) as block_count, block_action WHERE block_action = 'block' AND __time__ > TO_UNIXTIME(NOW() - 3600)

查询特定IP的访问记录:

* | SELECT * WHERE client_ip = '192.168.1.100' ORDER BY __time__ DESC LIMIT 100

5.3 配置监控仪表盘

您可以将常用的查询语句保存为仪表盘图表,实现可视化监控。日志服务提供了13个预置的监控图表和告警配置范例供参考,包括:4XX比例异常告警、5XX比例异常告警、QPS异常告警、QPS突增/突降告警、WAF拦截情况告警、CC拦截情况告警、单IP攻击量预警等。

创建仪表盘的步骤如下:在日志服务页面单击\"高级管理\",进入对应的Project,输入查询语句并执行查询。查询结束后,将图表添加到新建的仪表盘中。在仪表盘编辑模式下,可以自由调整图表布局、复制和编辑图表。

5.4 配置告警规则

WAF支持通过云监控和日志服务两种方式配置告警。

通过云监控配置告警:云监控可以对WAF的攻击事件、监控指标(如QPS、带宽等)设置监控和告警规则。支持的事件类型包括:Web攻击事件、CC攻击事件、ACL攻击事件、防扫描事件、带宽超阈值告警、QPS超阈值告警等。

通过日志服务配置告警:在日志服务中创建告警规则,定期执行查询语句,当查询结果满足预设条件时触发告警通知。这种方式更加灵活,可以实现任意复杂的告警逻辑。

一个典型的告警配置示例如下:

-- 5分钟内WAF拦截次数超过阈值的告警
* | SELECT COUNT(*) as block_5min WHERE block_action = 'block' AND __time__ > TO_UNIXTIME(NOW() - 300)

将阈值设置为10次,当5分钟内的拦截次数超过10次时触发告警。

六、高级防护功能

除了上述核心功能外,WAF还提供了多项高级防护能力,可根据业务需求按需开启。

6.1 Bot管理

Bot管理帮助识别和防御机器流量,包括数据爬取、撞库攻击、垃圾注册、恶意抢购等场景。Bot管理提供以下核心功能:

  • 流量分析:无需开通即可查看流量走势、风险接口等数据。
  • 爬虫威胁情报:基于阿里云全网威胁情报,识别恶意爬虫IP。
  • 合法爬虫白名单:放行Google、Bing、百度等合法搜索引擎的爬虫。

WAF已上线防爬场景化配置功能,支持基于实际业务场景定制防爬规则。配置防爬场景化规则后,原有的数据风控功能可以被替代。

6.2 数据风控

数据风控基于阿里云的大数据能力,结合人机识别技术,防止关键业务(注册、登录、活动、论坛等)中的机器爬虫欺诈行为。数据风控通过在人机交互过程中插入JavaScript检测脚本,判断请求是否来自真实用户浏览器。该功能在WAF高级版及以上版本提供,接入后无需对服务器或客户端做任何改造即可使用。

6.3 网站防篡改

网站防篡改功能帮助您锁定需要保护的网站页面(如首页、敏感页面等)。被锁定的页面在收到请求时,WAF会返回已设置的缓存页面,防止源站页面内容被恶意篡改。

6.4 API安全

API安全是WAF的独立计费模块,依托内置检测机制与自定义检测策略,自动识别已接入防护业务的API资产,检测API风险并上报API攻击事件。对于微服务架构和API优先的应用场景,API安全模块提供了针对性的防护能力。

七、WAF与其他产品的联合部署

7.1 WAF与CDN联合部署

如果您的网站已经使用了CDN进行内容加速,可以同时部署WAF和CDN。推荐的网络架构为:CDN(入口层,内容加速)→ WAF(中间层,应用层防护)→ 源站服务器。在这种架构下,网站业务流量先经过CDN加速,再转发到WAF进行安全检测,最后只有正常的业务流量到达源站。

配置时,在CNAME接入的\"WAF前是否有七层代理\"选项中选择\"是\"。域名添加到WAF后,将WAF分配的CNAME地址配置为CDN的回源地址。

7.2 WAF与DDoS高防联合部署

对于同时面临大流量DDoS攻击和Web应用攻击的业务,可以联合部署DDoS高防和WAF。DDoS高防负责清洗网络层的大流量攻击,WAF负责过滤应用层的Web攻击。配置时同样需要在WAF的接入配置中启用\"WAF前是否有七层代理\"选项。

八、白名单配置:避免误拦截

在实际运维中,合理配置白名单是平衡安全与可用性的关键。WAF提供了多个层次的白名单机制:

  • 网站白名单:让满足条件的请求不经过任何WAF防护模块的检测,直接访问源站。适用于完全信任的流量,如内部漏洞扫描工具的访问。
  • Web入侵防护白名单:让满足条件的请求跳过规则防护引擎的检测。
  • 数据安全白名单:让满足条件的请求跳过防敏感信息泄露、网站防篡改、账户安全模块的检测。
  • Bot管理白名单:让满足条件的请求跳过爬虫威胁情报、数据风控、智能算法、App防护模块的检测。
  • 访问控制/限流白名单:让满足条件的请求跳过CC安全防护、IP黑名单、扫描防护、自定义防护策略的检测。

在配置白名单时,建议遵循最小化原则——只放行确实需要绕过的请求,避免过度放行导致安全防护失效。

九、使用Terraform实现WAF配置即代码

对于追求自动化和可重复性的运维团队,可以使用Terraform来管理WAF的配置,实现基础设施即代码(IaC)。

9.1 配置WAF自定义规则

以下是一个使用Terraform配置WAF自定义规则的示例:

# main.tf - WAF自定义规则配置示例
provider \"alicloud\" {
  region = \"cn-hangzhou\"
}

# 查询已有站点信息
data \"alicloud_esa_sites\" \"example\" {
  site_name = \"example.com\"
}

# 配置WAF自定义规则
resource \"alicloud_esa_waf_rule\" \"example\" {
  site_id = data.alicloud_esa_sites.example.sites.0.id
  rule_name = \"block_malicious_ip\"
  rule_type = \"http_custom\"
  action = \"block\"
  match_conditions = jsonencode([
    {
      match_field = \"client_ip\"
      logical_operator = \"ip_match\"
      match_value = \"192.168.1.100\"
    }
  ])
}

9.2 配置WAF频次控制规则

频次控制规则的Terraform配置示例:

# 配置WAF频次控制规则
resource \"alicloud_esa_waf_rule\" \"rate_limit\" {
  site_id = data.alicloud_esa_sites.example.sites.0.id
  rule_name = \"rate_limit_login\"
  rule_type = \"http_rate_limit\"
  action = \"block\"
  match_conditions = jsonencode([
    {
      match_field = \"uri\"
      logical_operator = \"contains\"
      match_value = \"/login.php\"
    }
  ])
  rate_limit = jsonencode({
    stat_object = \"ip\"
    stat_period = 60
    threshold = 20
    block_time = 1800
  })
}

使用Terraform管理WAF配置的好处在于:配置变更可追溯、可回滚,并且可以通过CI/CD流水线实现自动化部署。执行 terraform init 初始化环境,terraform plan 预览变更,terraform apply 应用配置。

十、最佳实践总结

基于以上各章节的讨论,以下是阿里云WAF配置的核心最佳实践:

接入阶段:优先选择云产品接入(透明代理模式),因为配置简单、无需修改DNS。如果业务部署在云下或非阿里云平台,则使用CNAME接入。

基础防护:保持规则防护引擎开启,默认使用中等规则组。初次接入时先使用告警模式观察一至两周,确认无误后切换为拦截模式。

精准防护:根据业务特点配置自定义防护策略。对登录、支付等敏感接口配置精细化的频率控制规则。对于面向中国用户的网站,可开启地域级IP黑名单封禁境外访问。

监控告警:开启WAF日志服务,基于日志服务配置监控仪表盘和告警规则。重点关注QPS异常、5XX错误比例、拦截次数等关键指标。

白名单管理:合理配置各级白名单,避免误拦截影响业务。白名单配置应遵循最小化原则。

自动化运维:使用Terraform等IaC工具管理WAF配置,实现配置的版本化和自动化部署。

常见问题解答

问:WAF接入后网站访问变慢,如何排查?

答:首先检查WAF的防护模式是否误设为\"拦截\"且产生了大量误拦截——可在安全报表中查看拦截日志。其次检查回源超时配置是否合理。如果网站使用了CDN,确认CDN到WAF、WAF到源站的链路是否正常。

问:CC攻击防护规则中的\"滑块验证\"对App无效怎么办?

答:滑块和严格滑块验证仅适用于网页/H5环境。对于原生App、API等非浏览器环境,应将处置动作设置为\"阻断\"而不是滑块验证。

问:如何避免WAF误拦截正常的API请求?

答:可以通过以下方式处理:将API的请求路径加入Web入侵防护白名单;或者调整规则防护引擎的规则组从\"严格\"降为\"中等\"或\"宽松\";对于高频API调用,可以配置访问控制/限流白名单提高限速阈值。

问:WAF的按量付费和包年包月有什么区别?

答:按量付费灵活按使用量计费,适合测试环境或流量波动大的业务;包年包月提供固定的规格和价格,适合生产环境。包年包月的高级版及以上版本支持更多高级功能,如自定义防护规则组、自定义统计对象等。

问:如何验证WAF是否正常工作?

答:可以通过以下方法验证:在安全报表中查看是否有攻击拦截记录;使用curl命令模拟包含SQL注入特征的请求(如 curl \"http://yourdomain.com/?id=1 OR 1=1\"),观察是否被拦截;查看WAF日志中是否有对应的拦截日志。

问:多个域名可以共用一套WAF配置吗?

答:可以。在WAF 3.0中,可以通过创建防护模板并将多个防护对象(域名)关联到同一模板来实现配置复用。也可以使用防护对象组将多个域名集中管理。

相关文章

探索阿里云返点返佣:为您的云服务之旅增添实惠与价值

探索阿里云返点返佣:为您的云服务之旅增添实惠与价值

在当今数字化快速发展的时代,云服务已成为企业和个人不可或缺的一部分。阿里云作为全球领先的云计算服务提供商,以其强大的技术实力和丰富的产品服务,赢得了众多用户的信赖。而在选择阿里云服务的过程中,“阿里云…

买阿里云服务器能便宜吗?十年代理揭秘 3 大省钱攻略!

买阿里云服务器能便宜吗?十年代理揭秘 3 大省钱攻略!

作为深耕阿里云代理领域 10 年的 “老司机”,经常被问到:“买阿里云服务器能便宜吗?有没有优惠价格?” 今天就用实打实的行业经验告诉你:不仅能便宜,选对渠道还能省一大笔! 这篇文章带你解锁阿里云服务…

阿里云代理商返佣机制深度解析:头部代理优势与企业合作策略

阿里云代理商返佣机制深度解析:头部代理优势与企业合作策略

阿里云代理商的核心价值定位1. 代理商的角色与职责阿里云代理商作为阿里云生态的核心合作伙伴,承担着双重核心职能:• 产品销售:负责推广销售阿里云全系列云产品,包括云服务器ECS、云数据库RDS、对象存…

阿里云代理商返佣机制深度解析:头部代理优势与企业合作策略

阿里云代理商返佣机制深度解析:头部代理优势与企业合作策略

01一、阿里云代理商的核心价值定位1. 代理商的角色与职责阿里云代理商作为阿里云生态的核心合作伙伴,承担着双重核心职能:• 产品销售:负责推广销售阿里云全系列云产品,包括云服务器ECS、云数据库RDS…

阿里云代理商有哪些?阿里云代理返点是真的么?

阿里云代理商有哪些?阿里云代理返点是真的么?

一,阿里云代理商基本介绍阿里云代理商通俗一点,就是指从事阿里云云服务器,云数据库等阿里云公有云产品销售的代理商,每销售一件阿里云公有云产品出去,阿里云给予该代理商一定比例的提成。在阿里云官方定义中,这…

2026阿里云代理商生态全解析:五级代理体系、返佣政策与企业上云指南

2026阿里云代理商生态全解析:五级代理体系、返佣政策与企业上云指南

一、阿里云五级代理体系:权益阶梯与合作价值1. 五级代理的核心权益差异阿里云构建了多层次的代理生态体系,涵盖全国总代理、区域核心代理、行业ISV(独立软件开发商)、金牌/银牌认证代理及标准代理五大核心…