啟用代理後網站顯示憑證錯誤:HTTPS 憑證問題原因解析

整理系統時間、中間人攔截、Fake-IP 快取與節點異常等代理憑證警告原因,並提供實用的排查順序。

先辨別錯誤:憑證驗證失敗與連線失敗並不相同

啟用 Clash 後看到「您的連線不是私人連線」,不代表用戶端正在修改網站憑證。一般的 HTTP CONNECT、SOCKS 或 TUN 轉送不會替目標網站簽發憑證;瀏覽器仍會驗證網站的憑證鏈、有效期限與網域名稱。代理會改變連線路徑,而路徑上的 DNS、出口、認證閘道或封包擷取工具,可能讓瀏覽器收到另一張憑證。

先記下網址列中的完整主機名稱與錯誤代碼,再開啟警告頁提供的憑證檢視功能。各瀏覽器的入口位置不同,請特別記錄憑證的「簽發者」、「有效期限」與「主體替代名稱」(SAN)。別只看憑證顯示名稱;判斷網域是否相符,應以 SAN 為準。

錯誤或狀況 優先檢查項目 不能直接據此判定
NET::ERR_CERT_DATE_INVALID 系統時間、憑證有效期限 不一定是節點故障
NET::ERR_CERT_AUTHORITY_INVALID 憑證鏈、信任根、HTTPS 檢查工具 不應直接安裝頁面提供的根憑證
NET::ERR_CERT_COMMON_NAME_INVALID SAN、解析結果、認證閘道 不能只憑錯誤名稱判定網站已更名
ERR_PROXY_CONNECTION_FAILED 本機監聽連接埠、用戶端執行狀態 這不是網站憑證驗證錯誤
逾時、連線重設、TLS 交握失敗 網路路徑、協定相容性、出口連線狀態 不一定已收到伺服器憑證

系統時間與信任存放區:先排除本機驗證條件

檢查日期、時間與時區

憑證有明確的生效時間與到期時間。電腦從休眠恢復、主機板電池異常或手動調整時間後,系統時間可能與實際時間不符。若多個互不相關的網站都出現日期錯誤,請先檢查本機,不要一直更換節點。

  1. 在 Windows 11 開啟「設定」→「時間與語言」→「日期與時間」,檢查「自動設定時間」和時區,再選擇「立即同步」。
  2. 在 macOS 開啟「系統設定」→「一般」→「日期與時間」,確認是否自動設定日期與時間;受管理的裝置可能需要管理員權限。
  3. 重新開啟瀏覽器並前往原本的網域。若只有一個網站仍顯示錯誤,請確認該網站的憑證是否真的已過期。

在 Windows 中可使用以下命令查看目前時間與 Windows 時間服務狀態。若第二個命令顯示服務未執行,代表無法透過該命令確認時間同步狀態,並不表示 HTTPS 本身發生故障。

Get-Date
w32tm /query /status

分辨憑證鏈缺漏與信任存放區過舊

舊版系統、長期未更新的瀏覽器,以及網站漏送中繼憑證,都可能造成信任鏈錯誤。請先安裝系統與瀏覽器的正常更新,再以同一台裝置上的另一款瀏覽器交叉測試。不同瀏覽器使用的根憑證機制可能不同,因此「另一款瀏覽器可以開啟」只能做為線索,不能證明伺服器憑證一定正確。

若同一網站在多台裝置、不同網路上都出現錯誤,但其他網站正常,可能需要網站管理員修正憑證設定。請勿從搜尋結果或錯誤頁面下載來源不明的憑證,並匯入「受信任的根憑證授權單位」。

中間人封包擷取與 HTTPS 檢查:確認憑證簽發者

Fiddler、Charles、mitmproxy 等封包擷取工具啟用 HTTPS 解密時,會透過本機受信任的根憑證,動態簽發網站憑證。企業安全閘道或部分安全軟體的「HTTPS 掃描」也可能採用類似方式。若工具未正確安裝根憑證、憑證已過期,或瀏覽器不接受該信任來源,就會出現憑證警告。

交叉檢查代理設定與封包擷取程序

  • 檢查是否仍有封包擷取工具在執行、是否啟用 HTTPS 解密,以及該工具是否設定了系統代理。
  • 在 Windows 開啟「設定」→「網路和網際網路」→「Proxy」,記下「使用 Proxy 伺服器」的位址與連接埠,再與 Clash 用戶端目前的監聽設定比對。
  • 確認憑證的「簽發者」是否變成封包擷取工具或機構名稱。若名稱陌生,應進一步查證,但不能只憑名稱就認定遭到攻擊。
  • 關閉個人使用的封包擷取工具後,重新啟用用戶端的系統代理,再次測試。受企業管理的裝置請聯絡管理員,勿自行移除組織憑證或安全政策。

127.0.0.1:7890 是常見的本機代理範例,不是所有用戶端的固定連接埠。封包擷取工具與 Clash 若先後修改系統代理,後寫入的值可能會覆蓋先前設定;若連接埠已被其他程序占用,也可能連到非預期的本機服務。

一般的 Clash/mihomo 轉送不需要在瀏覽器安裝根憑證。若某份所謂的「代理修復教學」要求安裝不明根憑證,請先停止操作。根憑證代表一項信任授權,不是加速選項。

Fake-IP 與 DNS 快取:確認對應關係仍由核心處理

mihomo 的 Fake-IP 模式會為網域回傳對應位址,常見的設定範圍是 198.18.0.1/16。核心會根據對應關係還原網域,再進行規則比對與連線。這個位址不是網站的真實公網位址,也不應直接用它組成 HTTPS 網址進行測試。

Fake-IP 本身不會簽發憑證,也不會變更瀏覽器的信任存放區。較常見的問題是:瀏覽器或系統仍快取舊的 Fake-IP 位址,但 TUN、DNS 劫持或用戶端已停止運作,導致連線未回到負責維護該對應關係的核心。通常會出現連線失敗;只有流量最後抵達錯誤的 TLS 服務時,才可能進一步發生網域不相符等憑證錯誤。

依序恢復 DNS 與連線狀態

  1. 記錄目前的「系統代理」、「TUN 模式」狀態,以及作用中設定檔中的 dns.enhanced-mode、fake-ip-range 和 fake-ip-filter。不要一次修改所有設定。
  2. 關閉錯誤頁面,確認用戶端核心正在執行,並重新載入目前的設定檔;若用戶端提供清除 DNS 或 Fake-IP 快取的功能,請先了解其作用再使用。
  3. 在 Windows 的命令提示字元中執行 ipconfig /flushdns,再完全結束並重新開啟瀏覽器。清除系統快取不會自動清除瀏覽器與路由器中的所有快取。
  4. 重新前往原本的網域,同時查看用戶端的「連線」或「記錄」中是否顯示該網域,以及套用的規則與代理鏈。

瀏覽器的「安全 DNS」可能會改變網域解析路徑。Chrome 的設定位置是「設定」→「隱私權和安全性」→「安全性」→「使用安全 DNS」,實際選項會因版本與組織政策而異。排查時可先記錄原設定,暫時關閉後重新測試,再恢復原狀;不要把關閉安全 DNS 當成所有憑證錯誤的通用解法。

節點、出口與認證閘道:透過單一變因比對縮小範圍

若本機時間正常,也沒有發現 HTTPS 解密工具,接著比較連線路徑。節點故障、出口 DNS 異常、公共 Wi-Fi 登入閘道,以及錯誤的規則路由,都可能使連線抵達錯誤的伺服器。代理節點通常無法偽造瀏覽器認可的目標網站憑證;憑證警告正是需要保留的安全界線,不能為了「先開啟網頁」而略過。

一次只變更一項條件

  1. 固定使用同一台裝置、同一款瀏覽器與同一個網址,記錄目前的模式、規則比對結果和實際選用的節點。若策略群組使用自動選擇,請確認測試期間節點是否切換。
  2. 切換到另一個可信任的節點,其餘設定保持不變,再查看錯誤碼與簽發者是否有變化。
  3. 在符合網路使用規範的前提下測試直連。若 TUN 仍在執行,只關閉「系統代理」並不等於直連;請明確關閉相應的流量接管功能,或確認測試連線套用了 DIRECT。
  4. 情況允許時,改用手機熱點測試。若只有在特定 Wi-Fi 下出現問題,請確認網路是否需要先完成入口網站認證;使用系統提供的網路登入提示,不要在憑證警告頁輸入登入資訊。

若只有一個節點異常,請暫停使用該節點處理敏感業務,並向服務提供者回報網域、發生時間、錯誤碼與憑證簽發者。單次網域不相符不足以證明「節點劫持」,但多個互不相關的網站突然顯示同一張陌生憑證,就應立即停用該連線路徑並進一步查證。

規則決定實際路徑,模式名稱不能做為證據

在規則模式下,查看記錄中命中的是 DOMAIN-SUFFIX、GEOIP,還是末尾的 MATCH,並確認最終策略。代理群組名稱為「自動選擇」或「Proxy」,不代表連線一定經過預期的出口;群組也可能選到 DIRECT。TUN 負責接管流量,不會自動修復錯誤憑證;切換全域模式也不能取代規則檢查。

命令列重新測試:確認連接埠與驗證界線

以下使用 Windows 內建的 curl.exe,針對公開範例網域進行比對。範例假設用戶端的 HTTP 或 mixed 監聽連接埠為 7890,執行前務必換成實際值;純 SOCKS 連接埠不能當作 HTTP 代理使用。-I 會要求回應標頭,-v 則輸出連線與 TLS 診斷資訊。

curl.exe -Iv --proxy http://127.0.0.1:7890 https://example.com/
curl.exe -Iv --noproxy "*" https://example.com/

第二個命令只是沒有使用 curl 的明確代理設定,無法繞過仍在執行的 TUN、透明閘道或企業網路設備。若要真正比對連線路徑,應先確認流量接管狀態。不同 curl 建置版本使用的 TLS 後端與憑證存放區也可能不同,因此若命令成功但瀏覽器失敗,仍須檢查瀏覽器的憑證政策、擴充功能與快取。

  • 若顯示無法連線至 127.0.0.1:先檢查核心是否執行及監聽連接埠,不必立刻修改 DNS。
  • 若代理通道建立成功後才出現憑證錯誤:請優先檢查後續 TLS 驗證;通道連線成功不代表憑證可信。
  • 憑證驗證成功,但回傳 403 或 429:這是 HTTP 存取限制或頻率限制,不是憑證錯誤。
  • 若憑證驗證失敗:記錄完整錯誤,繼續比對時間、網域、信任鏈與連線路徑,不要使用 -k 或 --insecure 掩蓋問題。

還原設定並提交故障資訊

排查完成後,將暫時關閉的安全 DNS、調整過的代理模式與測試節點恢復為原先預定的狀態。若曾修改設定,請保留原始檔案與修改記錄,避免下次訂閱更新覆蓋本機變更後再次發生相同問題。請勿將訂閱連結直接貼到客服單或公開討論區。

向用戶端維護者、網站管理員或網路管理員回報時,提供以下資訊,比只說「啟用 Clash 就出錯」更容易找出問題。Clash發布站提供用戶端下載與使用說明,並非用戶端官方開發團隊;具體問題應交由對應專案或服務提供者處理。

  • 作業系統、瀏覽器、用戶端與 mihomo 核心的完整版本號,可從各自的「關於」或版本資訊頁面查詢。
  • 出錯的主機名稱、發生時間與時區、瀏覽器錯誤代碼,以及憑證簽發者和有效期限。
  • 系統代理與 TUN 狀態、實際監聽連接埠、命中的規則類型與最終策略;節點名稱可匿名處理。
  • 同一網址在切換節點、確認直連及更換網路後的測試結果,並清楚說明每個步驟只變更了哪些項目。

建議依序排查:記錄錯誤 → 確認時間 → 檢查憑證鏈與解密工具 → 清除不一致的 DNS 狀態 → 比對節點與網路路徑。若要進一步確認流量接管方式,可參閱系統代理設定、規則設定說明與故障排除。憑證驗證恢復正常後,再進行登入及其他敏感操作。

Clash 下載