身為網站站長或系統維運工程師,你是否也曾經歷過這樣的噩夢:在某個平凡無奇的深夜,伺服器監控系統突然發出刺耳的警報,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 WAF CDN / 邊緣層 零消耗(最優) 低 極高,流量根本進不來源站主機
Nginx return 444 Web 應用伺服器層 微量 中等 良好,拒絕傳送任何資料並速斷 TCP
Linux ipset + iptables 作業系統核心層 極低(雜湊查找) 中高 極佳,抵擋極端高併發流量必備

結語:架構靜態化才是終極解法

防堵惡意爬蟲就像是一場永無止境的貓捉老鼠遊戲,黑產團夥今天更換這批 IP,下週又會租用新的代理伺服器卷土重來。

除了定期檢視伺服器存取日誌、隨時擴充黑名單之外,從根本架構上進行改良更是長治久安之策——例如採用像 Astro 這類現代靜態網站生成器(SSG),將動態 PHP/DB 運算在建置期預先編譯為純粹的 HTML、CSS 與 JavaScript 靜態檔案。

當你的伺服器不需要在每一次訪客開啟頁面時即時連線資料庫,即便遭遇百萬次惡意爬取,也僅僅是如同分發靜態文字檔般輕巧自如,徹底告別資料庫崩潰的焦慮,讓你的伺服器永遠維持健康穩定的運作狀態。

✦ 獨立報導 · 讀者支持 ✦

以實際行動支持獨立觀點,與我們一同走得更遠

每一篇條理清晰的分析、每一次不隨波逐流的觀察,背後都是對真實與品質的堅持。我們拒絕內容農場與演算法流量綁架,堅持自由獨立的客觀發聲。

維持高品質的原創寫作與獨立營運,需要持續的實質力量。您可以選擇一次性贊助或每月定期支持,透過 Google 安全結帳,與我們一同守護這份深刻與清醒。

由 Google 安全處理付款 · 可隨時於 Google 帳戶管理或取消

為節省資源,留言將於捲動至此處或點擊按鈕後載入。