開啟代理後 HTTPS 憑證報錯的幾種成因:是節點問題還是本機設定

瀏覽器彈出 NET::ERR_CERT_AUTHORITY_INVALID 或「您的連線不是私密連線」時,很多人第一反應是關掉代理。但憑證報錯的成因分散在系統時間、節點行為、殘留的本機憑證三個完全不同的層面,處理方式也各不相同。本文按報錯類型逐一拆解排查路徑,並給出何時應該立即停用節點的判斷標準。

SEC-01

先分清報錯類型

HTTPS 憑證錯誤不是單一問題,瀏覽器給出的錯誤代碼本身就是排查的第一手線索。開啟代理之後如果突然出現憑證報錯,先看清楚具體是哪一種,再決定往哪個方向查,能省掉大量無效操作。

常見的幾類錯誤代碼含義並不相同:

  • NET::ERR_CERT_DATE_INVALID —— 憑證的有效期判斷失敗,通常指向本機系統時間或時區設定錯誤,與代理節點本身關係不大。
  • NET::ERR_CERT_AUTHORITY_INVALID —— 憑證的簽發機構不受信任,這是最需要警惕的一類,可能意味著連線被中途攔截並重新簽發了憑證。
  • NET::ERR_CERT_COMMON_NAME_INVALID —— 憑證上的網域與實際造訪的網域不符,常見於節點的分流規則出錯,把請求發到了錯誤的伺服器。
  • NET::ERR_SSL_PROTOCOL_ERROR —— 傳輸層交握失敗,可能是節點斷線、協定不相容,或者中間設備強行中斷了連線。
NOTE

Clash 本身工作在傳輸層做流量轉發,不會主動解密或重新簽發 HTTPS 憑證。也就是說,正常設定下的節點轉發不應該改變網站原本的憑證資訊。如果憑證的簽發者、有效期、指紋資訊發生了變化,問題一定出在節點行為異常或本機額外安裝的憑證上,而不是 Clash 客戶端的常規功能。

SEC-02

系統時間偏差:最容易被忽視的成因

HTTPS 憑證本身帶有有效期區間,系統會校驗目前時間是否落在這個區間內。如果本機時間因為時鐘漂移、更換電池、雙系統啟動錯誤等原因偏離了真實時間,幾乎所有網站的憑證都會被判定為「尚未生效」或「已過期」,即使憑證本身完全正常。

這類問題的一個典型特徵是:報錯會同時影響多個不同的網站,而且不區分是否開啟代理——只是開啟代理後造訪的網站變多了,才讓人誤以為是代理導致的。判斷方法很簡單:

  1. 核對系統時間與時區

    打開系統時間設定,確認「自動設定時間」或「網路時間同步」處於開啟狀態,並核對時區是否與實際所在地區一致。虛擬機、雙系統環境尤其容易出現時間被覆蓋的情況。

  2. 關閉代理單獨驗證

    暫時關閉 Clash,只造訪一個可信網站看憑證是否依舊報錯。如果關閉代理後問題依然存在,基本可以確認與代理無關,直接指向系統時間。

  3. 重新同步後清快取

    校正時間後,清除瀏覽器的 HSTS 快取與憑證透明度日誌快取(不同瀏覽器路徑不同),避免舊的錯誤判斷結果被快取重複使用。

時間偏差引起的報錯和節點毫無關係,不需要更換節點,也不需要重裝客戶端,校正系統時間即可解決。

SEC-03

節點中間人劫持:必須立即停用的訊號

如果關閉代理後憑證完全正常,一開啟節點就出現 NET::ERR_CERT_AUTHORITY_INVALID,而且報錯只發生在使用某一個特定節點時,這通常意味著這條鏈路上存在中間人(MITM)行為——某個中轉節點沒有單純轉發加密流量,而是攔截了 TLS 連線並用自己的憑證重新簽發,再轉發給真實網站。

這種行為在正常的代理轉發中不應該出現。判斷是否屬於這種情況,可以查看瀏覽器給出的憑證詳情:

  • 簽發機構異常——正規網站的憑證簽發機構通常是 Let's Encrypt、DigiCert、GlobalSign 等公認 CA,如果簽發機構顯示為陌生名稱或自簽名標識,應高度懷疑鏈路被攔截。
  • 有效期異常短——部分中間人憑證是執行時期臨時產生的,有效期可能只有幾天甚至幾小時,與目標網站官方憑證通常一年以上的有效期明顯不符。
  • 僅在特定節點重現——切換到同一訂閱下的其他節點後報錯消失,說明問題出在這個特定節點或其所在的中轉伺服器,不是本機或訂閱整體的問題。
STOP

一旦確認某個節點存在憑證被替換的行為,應立即停用該節點,不要繼續用它造訪任何涉及帳號登入、支付、身分驗證的網站。中間人節點具備解密並讀取明文流量的能力,繼續使用等同於把敏感資訊暴露給該節點的營運方。建議同時檢查該節點所屬的訂閱來源是否可信,必要時更換訂閱。

需要說明的是,這種劫持行為與節點的「付費/免費」屬性沒有直接關係,來路不明的免費節點風險更高,但不能反過來認為所有免費節點都存在這個問題,判斷依據始終是憑證詳情本身,而不是節點的定價方式。

SEC-04

殘留的抓包根憑證:被遺忘的第三種可能

還有一種成因常被忽略:本機曾經安裝過用於抓包分析或流量偵錯的根憑證(例如某些網路分析工具會要求安裝自訂 CA 憑證以解密 HTTPS 流量),偵錯結束後如果沒有徹底移除,這個根憑證會一直留在系統或瀏覽器的信任清單中。

這類殘留憑證本身不會主動作惡,但會帶來兩種典型問題:

  1. 如果該憑證對應的私鑰被不當保存或洩露,理論上存在被濫用的風險,瀏覽器出於安全政策可能會對使用該憑證鏈的連線發出警告。
  2. 某些系統層級代理偵錯工具在異常退出時,沒有正確清理其設定的系統代理與憑證信任狀態,導致後續開啟 Clash 的節點後,兩套憑證信任機制互相衝突,出現憑證鏈無法驗證的報錯。

排查方法是檢查系統與瀏覽器的憑證管理介面,尋找是否存在非知名 CA 簽發、且安裝時間與某次抓包偵錯行為吻合的憑證:

  • Windows:執行 certmgr.msc,查看「受信任的根憑證授權單位」清單,留意名稱陌生或安裝日期可疑的項目。
  • macOS:打開「鑰匙圈存取」,在「系統」或「登入」分類下檢查憑證信任設定,查找標記為「永遠信任」的非系統內建憑證。
  • 瀏覽器內建憑證管理:Chrome、Edge 等瀏覽器的設定中都有獨立的憑證管理入口,與系統層級憑證清單分開維護,兩處都需要檢查。

確認無用的偵錯憑證後應直接刪除,而不是簡單地設為「不信任」——部分系統在憑證仍存在但被標記不信任時,依然會在某些驗證環節產生歧義性的報錯提示。

SEC-05

排查順序與止損時機

三種成因的排查成本和風險等級完全不同,建議按下面的順序依次排除,避免一上來就懷疑節點、頻繁更換卻始終沒有解決根本問題。

  1. 先核對系統時間

    成本最低,一分鐘內可以確認或排除,幾乎不需要額外工具。

  2. 關閉代理重現一次

    確認報錯是否與代理開關狀態相關,這是區分「本機環境問題」與「鏈路問題」的關鍵分界點。

  3. 切換節點交叉驗證

    如果只在開啟代理時出現報錯,再切換同一訂閱下的不同節點,確認問題是否跟隨特定節點出現,而不是所有節點都存在。

  4. 檢查憑證詳情與本機憑證清單

    如果問題跟隨某個特定節點,查看該網站憑證的簽發機構與有效期是否異常;如果所有節點都受影響,轉去檢查本機是否殘留舊的偵錯憑證。

關於 TUN 模式的一個補充說明:開啟 TUN 模式後,系統層面的流量接管方式發生變化,部分安全軟體或系統防火牆可能因此觸發額外的憑證驗證策略,這屬於系統相容性層面的問題,與節點是否安全無關。如果只在開啟 TUN 模式時出現憑證報錯,而一般系統代理模式下正常,可以先嘗試暫時關閉 TUN 模式定位問題範圍,再決定是否需要調整客戶端的網路介面卡設定。

NOTE

判斷是否需要立即停用節點的核心標準很簡單:關閉代理後報錯消失,且只在特定節點重現,同時憑證簽發機構或有效期出現明顯異常——滿足這三個條件才是需要停用節點的強訊號。僅僅是系統時間不對或存在殘留的偵錯憑證,並不意味著目前使用的節點存在安全問題。

最後建議保留一個習慣:更換訂閱或新增陌生來源的節點後,先用一個非敏感網站測試憑證是否正常,再進行涉及帳號與支付的操作,可以把風險控制在最小範圍內。

下載客戶端