上周三凌晨两点,我被服务器告警短信吵醒:“CPU使用率98%!”
我一个激灵坐起来——我的小破站日均访问不到50人,谁在半夜“爆破”我?
登录后台一看,访问日志里全是陌生IP,User-Agent(用户代理)长得奇形怪状:
python-requests/2.28
、curl/7.68
、Go-http-client/1.1
……
还有一些自称“蜘蛛”的家伙,比如 AhrefsBot
、SemrushBot
、MJ12bot
——但我一个中文小站,它们来干嘛?又不是英文SEO站!
后来才明白:我的服务器,正在被“垃圾流量”白嫖!
哪些“蜘蛛”其实该拉黑?
像 Google、百度、必应 这些正经搜索引擎,当然一般不建议屏蔽,除非你确定不要它。
但下面这些“伪蜘蛛”,对中文站基本没用,反而疯狂爬内容、占资源:
AhrefsBot
(SEO分析工具) SemrushBot
(竞品分析) MJ12bot
(第三方SEO爬虫) DotBot
(常用于采集) BLEXBot
(低质量爬虫)
SemrushBot、MJ12bot、AhrefsBot、ZoominfoBot、YandexBot、
SurdotlyBot、DotBot、CCBot、ClaudeBot、SkyworkSpider、
serpstatbot、Amazonbot、gptbot、SearchBot、BLEXBot、
Brightbot、duckduckbot、
Twitterbot……
它们不带来真实用户,只干一件事:把你网站内容扒走,喂给竞争对手或垃圾站,或者用于训练AI大模型等等。
还有更狠的:批量采集脚本
除了假蜘蛛,还有大量用 Python
、curl
、Go
写的自动化脚本,伪装成浏览器疯狂请求。
特征很明显:
- User-Agent 里带
python
、curl
、http-client
- 请求频率极高(1秒几十次)
- 只抓文章页,不看CSS/JS
它们的目标?免费采集你的原创内容,转手发到其他平台,挣流量分成。
两招轻松拦截,服务器立马安静
方法一:用 Nginx 直接屏蔽(适合技术人员)
在你的 Nginx 配置里加一段规则:
if ($http_user_agent ~* "python|curl|Go-http-client|AhrefsBot|SemrushBot|MJ12bot|DotBot|BLEXBot") {
return 403;
}
推荐位置:
1. 在代理站点server块中添加(推荐)
# 代理站点:clicksun.cn及其所有子域名
server {
listen 80;
server_name clicksun.cn *.clicksun.cn;
# 防范垃圾爬虫 - 添加在这里
if ($http_user_agent ~* "python|curl|Go-http-client|AhrefsBot|SemrushBot|MJ12bot|DotBot|BLEXBot") {
return 403;
}
# 设置允许的最大请求体大小
client_max_body_size 100M;
client_body_timeout 360s;
location / {
proxy_pass http://172.16.11.15:80;
# ... 其他proxy配置
}
}
2. 如果要在所有server块生效,可以放在第一个server块中
# 在所有端口添加基础防护
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
# 防范垃圾爬虫 - 或者放在这里(对所有域名生效)
if ($http_user_agent ~* "python|curl|Go-http-client|AhrefsBot|SemrushBot|MJ12bot|DotBot|BLEXBot") {
return 403;
}
# 添加安全响应头
add_header X-Frame-Options "DENY";
add_header X-Content-Type-Options "nosniff";
# ... 其他配置
}
建议:
推荐放在第二个server块(clicksun.cn对应的块),因为第一个server块主要用于捕获非法请求并返回444,这样配置只会影响您实际运营的网站,不会影响默认server的处理逻辑。
重启 Nginx,这些“假访客”再访问,直接返回 403 Forbidden,连 PHP 都不用跑,省下大量 CPU!
方法二:用宝塔面板防火墙(小白友好)
- 登录宝塔 → 安全 → 免费防火墙(未安装可先装)
- 进入“User-Agent 黑名单”
- 把特征值数据贴进去:
(SemrushBot|MJ12bot|AhrefsBot|ZoominfoBot|YandexBot|SurdotlyBot|DotBot|CCBot|ClaudeBot|SkyworkSpider|serpstatbot|Amazonbot|gptbot|SearchBot|BLEXBot|Brightbot|duckduckbot|Twitterbot|python|curl|Go-http-client
) 这个是完整版本
- 保存!从此这些流量连网站门都摸不到。
效果立竿见影
我加完规则第二天,CPU 使用率从 80%+ 直接降到 10%以下,服务器安静得像图书馆。
而且真实用户访问速度更快了——因为资源不再被垃圾流量抢走。
最后提醒
屏蔽不是目的,保护内容和服务器资源才是关键。
如果你也是个人站长、小企业官网、博客主,不妨检查下访问日志——
说不定你的“高负载”,也是一群“看不见的贼”在作祟。
该文章在 2025/10/10 15:44:55 编辑过