AI 时代网站天天被 AI 抓取怎么办?服务器快扛不住了

一、AI 爬虫正在把你的服务器吃垮

你有没有发现最近服务器负载越来越高?明明流量没涨多少,CPU 和带宽却一直在高位运行。

罪魁祸首就是 AI 爬虫。

ChatGPT、Claude、Perplexity、Gemini、文心一言、通义千问——几乎每家大模型都在全网爬取数据训练模型。它们的爬虫不像搜索引擎那样”绅士”,而是:

  • 并发高:同时发起数百个请求
  • 频率快:毫秒级别连续请求
  • 不守规则:很多 AI 爬虫根本不读 robots.txt
  • 伪装性强:伪造 User-Agent 冒充真实用户

一个站长朋友跟我吐槽:他的资讯站一天被 GPTBot 爬了 30 万次,服务器 CPU 直接干到 95%,正常用户访问卡成狗。

二、先看看你的服务器是不是被 AI 爬虫打了

登录服务器,跑一下这条命令:

bash

# 查看访问日志中的 User-Agent 分布
awk -F'"' '{print $6}' /www/wwwlogs/access.log | sort | uniq -c | sort -rn | head -30

如果看到以下这些关键词大量出现,说明你的网站正在被 AI 爬虫狂抓:

GPTBot
Claude-Web
PerplexityBot
Bytespider
Amazonbot
anthropic-ai
Google-Extended
CCBot

再看看带宽消耗:

bash

# 查看实时带宽占用
nload

如果带宽被占满但 PV 没涨,基本就是爬虫在吃你的资源。

三、为什么 Nginx 拦截 AI 爬虫效果很差

很多站长第一反应是改 Nginx 配置封 UA:

nginx

if ($http_user_agent ~* "GPTBot|Claude|PerplexityBot") {
    return 444;
}

这个方法现在已经基本没用了。 原因有三个:

第一,AI 爬虫会伪造 UA。 大部分爬虫已经学会伪装成 Chrome 浏览器,UA 根本看不出来。

第二,Nginx 层面拦截是在源站,流量已经到达服务器了。 带宽一样被吃掉,CPU 一样被占满。

第三,规则维护不过来。 AI 产品每周都有新的,你不可能手动一个个追。

要真正解决问题,必须在流量到达服务器之前就把 AI 爬虫拦住。这就是云 WAF 做的事。

四、推荐方案:百度云防护 WAF 拦截 AI 爬虫

百度云防护 WAF 在流量进入源站之前就完成识别和拦截。AI 爬虫的请求在 WAF 节点就被处理掉了,根本到不了你的服务器。

4.1 核心拦截能力

JA3/JA4 TLS 指纹识别 AI 爬虫可以伪造 UA,但伪造不了 TLS 指纹。每个客户端在建立 HTTPS 连接时都会暴露自身的 TLS 指纹(JA3),百度云防护通过指纹精准识别出非浏览器的自动化工具,不管它怎么伪装 UA 都没用。

智能 Bot 行为分析 AI 爬虫的行为模式和人不一样——访问间隔太规律、页面停留时间太短、访问深度太广。百度云防护的 Bot 识别引擎通过行为分析自动识别并拦截。

自定义规则灵活配置 你可以自定义规则,对特定路径、特定指纹进行精准拦截。

4.2 和 Nginx 拦截的对比

方案拦截位置效果服务器压力
Nginx UA 拦截源站差(伪造 UA 就绕过)流量已到服务器
百度云防护 WAF云端节点好(指纹+行为双重识别)流量在节点被拦截

五、实操流程:百度云防护拦截 AI 爬虫

5.1 接入百度云防护(5 分钟)

步骤 1:注册账号 访问百度云防护官网,注册百度智能云账号。

步骤 2:添加站点

控制台 → 站点管理 → 添加站点
域名:www.yourdomain.com
源站 IP:你的服务器 IP
协议:HTTP/HTTPS

步骤 3:修改 DNS 解析

域名注册商后台 → DNS 解析
将 www.yourdomain.com 的 A 记录
改为百度云防护提供的 CNAME 地址
TTL:600 秒

步骤 4:等待生效

bash

# 验证 DNS 是否生效
ping www.yourdomain.com
# 应返回百度云防护节点 IP,不是你的源站 IP

5.2 开启 AI 爬虫拦截

开启 Bot 防护

控制台 → 安全策略 → BOT 防护 → 开启
选择:智能 BOT 识别
处置动作:JS 挑战 或 拦截

开启 JA3 指纹防护

控制台 → Web防护 → 自定义防护 → 新建规则

规则名称:拦截AI爬虫指纹
匹配条件:JA3 等于已知爬虫指纹列表
处置动作:拦截
封禁时长:1440 分钟(24 小时)

不知道怎么获取 JA3 指纹?可以先分析拦截日志,把高频出现的异常指纹提取出来加入规则。

配置自定义频率限制

控制台 → Web防护  → CC 防护 → 精准自定义 CC

匹配条件:URI 包含 /
统计维度:JA3
阈值:10 次 / 200 秒
处置动作:拦截 3600 秒

这条规则的意思是:同一个 JA3 指纹在 200 秒内请求超过 10 次,就封禁 1 小时。AI 爬虫因为用同样的库和工具,JA3 指纹通常固定不变,一旦触达阈值就被自动封禁。

5.3 配置爬虫白名单(放行搜索引擎)

注意不要把搜索引擎也拦了:

控制台 → 访问控制 → IP 白名单
添加:
  Baiduspider IP 段
  Googlebot IP 段
  Bingbot IP 段

或者直接在 Bot 防护中开启”搜索引擎白名单”选项。

六、拦截效果验证

接入后第二天,查看拦截数据:

控制台 → 统计报表 → 安全事件

筛选:BOT 防护
预期结果:看到大量 AI 爬虫被拦截的记录

同时查看服务器负载:

bash

top

正常情况下,CPU 占用应该从之前的 90%+ 降到 20% 以下。

七、其他辅助手段

除了 WAF 拦截,你也可以配合以下措施:

更新 robots.txt

txt

User-agent: GPTBot
Disallow: /

User-agent: Claude-Web
Disallow: /

User-agent: PerplexityBot
Disallow: /

User-agent: CCBot
Disallow: /

User-agent: Bytespider
Disallow: /

但要注意,robots.txt 是君子协议,不遵守的爬虫照样爬。这只是辅助手段,不能依赖。

CDN 缓存静态资源 把图片、CSS、JS 等静态资源的缓存时间设置长一些(7-30 天),即使被爬取也不会打到源站。百度云防护自带 CDN 加速,按以下配置:

控制台 → 站点设置 → 缓存配置
静态文件缓存:7 天

八、总结

AI 爬虫的问题是每个站长迟早都要面对的。你在浏览器里问 AI 一句”帮我总结一下”,背后可能是你的服务器在替它出这份钱。

核心策略就三条:

  • 不要指望 Nginx 封 UA 能解决问题——AI 爬虫会伪装
  • 在流量到达服务器之前就拦掉——用云 WAF
  • JA3 指纹 + 行为分析 + 频率限制三层过滤——AI 爬虫基本过不来

百度云防护 WAF 基础版 299 元/月,通过主机吧购买享 7.5 折(299元/月),免费配置指导,有问题随时问。

主机吧商店 – 百度云防护 WAF: https://www.zhujib.com/shop/26864.html

给TA打赏
共{{data.count}}人
人已打赏
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
在线客服
在线客服
热线电话
QQ客服
电子邮箱
suduwangluo