身为网站站长或系统维运工程师,你是否也曾经历过这样的噩梦:在某个平凡无奇的深夜,服务器监控系统突然发出刺耳的警报,CPU 使用率毫无预警地飙升至 100%,内存被大量占满,正常访客打开网页只能看到冷冰冰的「502 Bad Gateway」或「504 Gateway Timeout」?

当你急忙连进终端查看 Web 服务器访问日志(Access Log)时,映入眼帘的往往不是来自真实读者的热情浏览,而是数以万计、来自特定网段的高频暴力请求。

这些自动化工具并非来自 Googlebot、Bingbot 这类遵守互联网规范的合法搜索引擎,而是恶意消耗服务器带宽、强行抓取原创文章建立内容农场、未授权爬取语料训练 AI 模型,甚至四处探测网站安全漏洞的「垃圾爬虫(Bad Bots & Scrapers)」。

在诸多恶意流量中,来自中国大陆特定电信网段的未授权爬虫因为频率极高、并发极大且完全无视规范,成为许多站长最头痛的公害。本文将公开近期频繁活动的高危 IP 网段,并提供从 CDN 边缘层、Web 服务器到 Linux 核心防火墙的完整防御配置指南。


一、为什么必须果断封锁这类垃圾爬虫?

许多新手站长可能会心存侥幸,认为「多一点流量进来,会不会对网站 SEO 有帮助?」答案是完全相反!

这类恶意爬虫对服务器与网站营运带来的是纯粹的毁灭性打击:

  1. 拖垮服务器性能与瘫痪连接: 现代动态网站(如 WordPress、Drupal 或自建后端)每次处理请求都需要调用 PHP/Node.js 线程并查询 MySQL 数据库。恶意爬虫在一秒钟内发起几十次甚至上百次抓取,会瞬间吃光数据库连接池(Connection Pool)与 CPU 运算能力,导致真实用路人无法顺利开页。
  2. 完全漠视 robots.txt 协议: 遵守道德的搜索引擎爬虫会主动读取网站根目录下的 robots.txt 并遵循抓取延迟(Crawl-delay);而这类灰产爬虫则完全无视所有禁爬规则,甚至专门抓取禁止访问的路径。
  3. 伪造 User-Agent 与漏洞刺探: 它们经常伪装成一般 Chrome 浏览器或假冒 Googlebot,同时暗中扫描 /wp-login.php、/.env、/phpmyadmin、/.git/config 等敏感路径,寻找被遗忘的配置文件或弱密码漏洞。
  4. 原创内容盗窃与带宽成本浪费: 辛辛苦苦撰写的原创图文在发布数分钟内即被无情复制并转载至内容农场;若你的服务器采用流量计费(如 AWS、GCP 或 Linode),月底还会因此收到暴增的云端账单。

服务器监控仪表板即时分析恶意爬虫高频流量与异常 CPU 负载曲线


二、近期高危中国垃圾爬虫 IP 与 CIDR 网段清单

根据近期多家中文站长社群与服务器日志的交叉比对,以下属于中国电信(广东等地区)的 IP 地址与 /24 网段,频繁出现未经授权的暴力高并发爬取与目录刺探行为,建议直接列入全局黑名单予以阻断:

1. 单一独立高危 IP

  • 14.153.206.108
  • 14.155.182.76
  • 14.155.204.129

2. 密集活动的 /24 网段(整段封锁)

  • 14.155.183.0/24 (涵盖 14.155.183.1 ~ 14.155.183.254)
  • 14.155.184.0/24 (涵盖 14.155.184.1 ~ 14.155.184.254)
  • 14.155.185.0/24 (涵盖 14.155.185.1 ~ 14.155.185.254)
  • 14.155.230.0/24 (涵盖 14.155.230.1 ~ 14.155.230.254)

三、三道立体防御纵深配置实战

要彻底杜绝垃圾爬虫的骚扰,单靠单一手段往往难以奏效。建议建立「CDN 边缘层 $\rightarrow$ Web 服务器层 $\rightarrow$ 核心防火墙层」的三道立体防御体系。

系统工程师在终端机配置 Linux 防火墙规则与 IP 阻断黑名单


第一道防线:Cloudflare CDN / WAF 边缘防御(推荐首选)

将网站流量交由 Cloudflare 代理(点亮橘色小云朵)是性价比最高、对源站服务器零负担的防御手段。恶意流量会在距离访客最近的边缘节点直接被挡下,根本不会碰触到你的主机。

1. 建立自订 WAF 规则(Custom Rules)

登录 Cloudflare 控制台,前往「安全性(Security)」$\rightarrow$「WAF」$\rightarrow$「自订规则」:

  • 规则名称:Block Known Bad Crawler Subnets
  • 符合条件:选择「IP 来源位址(IP Source Address)」$\rightarrow$「位于清单中(is in)」或使用运算式:
    (ip.src in {14.153.206.108 14.155.182.76 14.155.204.129 14.155.183.0/24 14.155.184.0/24 14.155.185.0/24 14.155.230.0/24})
  • 执行动作:选择「封锁(Block)」。

2. 开启机器人防护(Bot Fight Mode)

  • 在「安全性」$\rightarrow$「Bots」中开启「Bot Fight Mode」。
  • 若你的读者群主要位于台湾、香港或欧美,且网站完全无中国大陆商业业务,甚至可以直接设置地理位置规则:当 ip.geoip.country eq "CN" 且并非合格搜索引擎时,强制触发「受控质询(Managed Challenge)」,能一举刷掉 99% 的无头(Headless)自动化爬虫脚本。

第二道防线:Nginx 反向代理层直接中断连接

如果流量未经过 CDN,或者你希望在 Web 服务器内部进行二次过滤,可以在 Nginx 配置文件中直接封锁特定 IP。

值得注意的是,遇到恶意爬虫时,建议使用 Nginx 特有的 return 444; 而不是标准的 deny(会返回 403 Forbidden 页面)。444 会让 Nginx 立即切断 TCP 连接,不传送任何 HTTP 标头或错误页面,最大限度节省服务器网络资源。

在 /etc/nginx/conf.d/block_bad_bots.conf 中加入:

# 封锁特定的高危恶意 IP 与网段
geo $bad_client {
    default         0;
    14.153.206.108  1;
    14.155.182.76   1;
    14.155.204.129  1;
    14.155.183.0/24 1;
    14.155.184.0/24 1;
    14.155.185.0/24 1;
    14.155.230.0/24 1;
}

server {
    listen 80;
    listen 443 ssl http2;
    server_name example.com;

    # 命中黑名单直接切断连接
    if ($bad_client) {
        return 444;
    }

    # 其余正常配置...
}

重新加载 Nginx 生效:

sudo nginx -t && sudo systemctl reload nginx

第三道防线:Linux 核心防火墙(iptables + ipset)

如果爬虫的量级已经大到足以消耗 Nginx 的连接处理进程,最底层的终极解法是直接在 Linux 核心层(Kernel Space)将数据包丢弃(DROP)。

许多人习惯直接写数十条 iptables -A INPUT -s ... -j DROP,但规则一多会造成 Linux 网络数据包逐条线性比对,反而拖慢系统效能。正确且高效的做法是使用「ipset」哈希表:

1. 安装并建立黑名单 ipset 表

# Ubuntu / Debian
sudo apt-get install ipset iptables-persistent -y

# 建立一个名为 bad_crawlers 的哈希网段表
sudo ipset create bad_crawlers hash:net

2. 将高危 IP 与网段加入清单

sudo ipset add bad_crawlers 14.153.206.108
sudo ipset add bad_crawlers 14.155.182.76
sudo ipset add bad_crawlers 14.155.204.129
sudo ipset add bad_crawlers 14.155.183.0/24
sudo ipset add bad_crawlers 14.155.184.0/24
sudo ipset add bad_crawlers 14.155.185.0/24
sudo ipset add bad_crawlers 14.155.230.0/24

3. 绑定 iptables 核心规则

# 当进来的数据包命中 bad_crawlers 集合,直接无情丢弃(DROP)
sudo iptables -I INPUT -m set --match-set bad_crawlers src -j DROP

# 保存规则重启不失效
sudo ipset save > /etc/ipset.conf
sudo netfilter-persistent save

透过 ipset 哈希查询,即使黑名单内包含数万个 IP 网段,Linux 核心在微秒级内便能完成判定并将其丢弃,服务器完全不耗费额外 CPU 与内存。


防御策略综合成效比较

将各种常见防范方式的效益与适用场景对比整理如下:

防御手段防护层级服务器资源消耗实施难度防御效果评估
robots.txt协议规范层极低极简单无效(恶意垃圾爬虫一律无视)
Cloudflare WAFCDN / 边缘层零消耗(最优)低极高,流量根本进不来源站主机
Nginx return 444Web 应用服务器层微量中等良好,拒绝传送任何资料并速断 TCP
Linux ipset + iptables操作系统核心层极低(哈希查找)中高极佳,抵挡极端高并发流量必备

结语:架构静态化才是终极解法

防堵恶意爬虫就像是一场永无止境的猫捉老鼠游戏,黑产团伙今天更换这批 IP,下周又会租用新的代理服务器卷土重来。

除了定期检视服务器访问日志、随时扩充黑名单之外,从根本架构上进行改良更是长治久安之策——例如采用像 Astro 这类现代静态网站生成器(SSG),将动态 PHP/DB 运算在构建期预先编译为纯粹的 HTML、CSS 与 JavaScript 静态文件。

当你的服务器不需要在每一次访客开启页面时即时连接数据库,即便遭遇百万次恶意爬取,也仅仅是如同分发静态文本文件般轻巧自如,彻底告别数据库崩溃的焦虑,让你的服务器永远维持健康稳定的运作状态。

✦ 独立报道 · 读者支持 ✦

以实际行动支持独立观点,与我们一同走得更远

每一篇条理清晰的分析、每一次不随波逐流的观察,背后都是对真实与品质的坚持。我们拒绝内容农场与算法流量绑架,坚持自由独立的客观发声。

维持高品质的原创写作与独立运营,需要持续的实质力量。您可以选择一次性赞助或每月定期支持,通过 Google 安全结账,与我们一同守护这份深刻与清醒。

由 Google 安全处理付款 · 可随时在 Google 账户管理或取消