安全

Cloudflare 防护

小橙云、基础 DDoS、WAF、边缘限流、Bot Fight Mode 和 Under Attack 的使用边界

默认策略

域名正式上线后,A / CNAME 记录平时就应该开启 Cloudflare 代理,也就是 DNS 面板里的橙色云朵。这样访问会先经过 Cloudflare,再转发到源站,基础 DDoS、缓存、WAF、请求头和安全事件分析才有生效位置。

如果源站 IP 可以被直接访问,攻击者仍然可以绕过 Cloudflare。生产环境应尽量让源站只接受 Cloudflare 或内网入口流量。

Cloudflare 代理不是应用安全的替代品。它负责挡在边缘,应用仍然要做登录态、权限、限流、上传限制、支付通知验证和密钥保护。

常用开关

能力平时是否开启适合处理说明
DNS Proxy / 小橙云基础流量入口和 DDoS 防护正式域名默认开启
DDoS Managed RulesL3 / L4 / HTTP DDoSCloudflare 自动分析流量特征并缓解攻击
WAF Managed Rules建议开启常见 Web 攻击、异常请求先观察安全事件,再按误伤调规则
WAF Rate Limiting建议按路径配置/api/*、登录、验证码、搜索、上传比应用层限流更早生效,能减少源站压力
Bot Fight Mode谨慎开启明显机器人流量会作用于整个域名,可能影响 API、移动端或监控
Under Attack Mode攻击时临时开启严重 L7 攻击会出现中间验证页,影响访问体验和统计

边缘限流建议

Cloudflare 的边缘限流适合先保护这些路径:

路径建议动作原因
/api/auth/*Managed Challenge 或 Block登录、注册、验证码和密码找回最容易被自动化攻击
/api/chat / AI 生成接口Block 或 Managed Challenge直接关联模型费用和队列资源
/api/uploads/*Block上传会消耗带宽、内存和对象存储
/api/docs-search / 搜索接口Managed Challenge 或 Block低成本爬虫会不断触发搜索和数据库查询
/admin/*Managed Challenge,必要时 IP allowlist管理后台不应该暴露给未验证的批量请求

应用层限流仍然要保留,因为 Cloudflare 看不到所有业务维度。例如按用户 ID、手机号、订单 ID、API key 或失败状态码计数,仍然需要应用自己做。

Bot Fight Mode 放在哪里

Cloudflare 新版控制台入口是:

  1. 进入 Cloudflare Dashboard,选择账号和域名。
  2. 打开 Security
  3. 进入 Settings,筛选 Bot traffic,找到 Bot Fight Mode

旧版入口通常是 Security > Bots > Bot Fight Mode

Bot Fight Mode 是全域名级别的简单开关,不能用普通 WAF 规则跳过指定路径。如果你有 API 客户端、监控探针、移动端 App 或机器回调,先用 WAF Rate Limiting 和 Managed Challenge;只有确认误伤可接受时再开 Bot Fight Mode。

Turnstile 和 Under Attack

Turnstile 是表单或动作级别的人机验证,适合保护注册、登录、短信验证码发送、密码找回等高风险入口。中国用户访问 Turnstile 脚本可能有额外延迟,所以不建议默认铺满所有表单。攻击出现时,优先只保护被打的动作。

Under Attack Mode 是更重的全站或路径级挑战。它适合严重 L7 攻击时临时开启,不适合长期当普通风控,因为它会打断正常访问,也会影响部分统计。

来源