SEO 百科

DDoS 防护

本页目录

DDoS 防护

DDoS 防护 是一套措施,用流量清洗、限速、验证页这些手段,在攻击期间保住网站可用[1]。站长买它,图的是网站不被流量打垮。防护规则如果没给爬虫留出通路,抓取会先出事[3]。

攻击的形态与代价

Cloudflare 对这类攻击的定义是:用大量流量压垮目标或者它周边的基础设施,让正常流量进不来[1]。

攻击分三类,各自打的位置不同[1]。

  • 体积型:把目标与互联网之间的带宽占满。
  • 协议型:消耗服务器与网络设备的连接资源,针对传输层。
  • 应用层:用请求打垮生成网页的那一层,一个 HTTP 请求对服务器的开销可以很大[1]。

规模还在涨。Web Almanac 2025 记录,攻击的数量与体量都在增加,当年 11 月记录到的最大一次达到 31.4 Tbps[5]。这个数字来自第三方统计,覆盖的是被观测到的攻击。

缓解的方式

Cloudflare 把缓解的核心归成一句话:把攻击流量与正常流量区分开[1]。常用的四种手段如下[1]。

  • 限速:限制某个时间窗内服务器接受的请求数。
  • WAF:按规则过滤流量。
  • Anycast 网络分散:把攻击流量摊到多地的节点上。
  • 黑洞路由:把流量引到一条丢弃路由里。

对站长来说,最常见的形态是买云防护或者用带防护的 CDN,节点在前面顶住流量,源站只在真正需要时被访问[1]。

挑战页与爬虫

防护要区分人机,常用做法是弹一个验证页。这一步会误伤爬虫。

Google 把这类结果叫软屏蔽,并说明了后果:抓取工具看到“您确定您是人类”的插页内容时,看到的东西就只有这个插页,看不到网页本身[3]。

爬虫不会去过验证页。它拿到的是一份非预期的响应,页面内容等于没抓到[3]。

Google 给出的改动很明确:对自动化客户端返回 503 状态码,明确表示内容暂时不可查看,这样内容不会被自动移出索引[3]。硬屏蔽常回 503 与 429,它们同样表示临时性屏蔽[3]。

百度那边用的是另一套话语。抓取诊断手册提醒,站点可能“由于系统级问题而阻止了百度访问,例如 DNS 配置问题、配置不当的防火墙或 DoS 防护系统”[4]。原因同样落在请求量上:防护系统按请求量自动封禁,爬虫的请求比普通用户多[4]。

配置上的取舍

自己搭防护还是买云防护,差别在成本与可控性。云防护按量或者按月付费,接上就能用,节点分布广;缺点是规则不透明,误拦了要等服务商调整[1]。

不管选哪种,配置时要守住两条。

  1. 放行已知爬虫。Google 公布了抓取工具的 IP 段,可以按这些名单把爬虫从屏蔽名单里移除,甚至列入许可名单[3]。核验用反向解析加正向解析,两头对得上才放行[2]。
  2. 给爬虫留一条非验证的通道。验证页留给真人,自动化客户端一律回 503[3]。

还有一个容易忽略的细节:IP 可能在无人察觉时被自动加进屏蔽名单,所以名单要定期检查[3]。

常见误用

  • 开着默认的挑战设置不管。爬虫拿到的响应里没有内容。
  • 攻击一过就把防护全关。攻击期间加进去的临时规则会留在名单里。
  • 只放行 User-Agent。这个字段能伪造,真人爬虫没放进来,冒充的倒进来了。
  • 用黑洞路由处理应用层攻击。这种做法会把正常流量一起丢掉[1]。

附录

参见

参考资料

官方(境外)

  1. 《What is a DDoS attack?》,Cloudflare Learning Center。
  2. 《验证 Googlebot 和其他 Google 抓取工具》,Google 搜索中心。
  3. 《抓取 12 月:CDN 和抓取》,Google 搜索中心博客,2024-12-24。

官方(国内)

  1. 《平台工具使用手册(抓取诊断)》,百度搜索资源平台,2020-08-14 更新。

第三方

  1. 《Security》,HTTP Archive《Web Almanac 2025》,2026-01-15。

外部链接

无。