macOS 安裝 Clash 顯示無法打開或已損毀:網路擴充功能與鑰匙圈權限處理

macOS 安裝 Clash 客戶端常遇到「無法打開」「已損毀」或網路擴充功能授權失敗,本文按系統版本整理安全性設定、網路擴充功能與鑰匙圈的完整處理步驟。

在 macOS 上安裝 Clash 系客戶端(ClashX、ClashX Meta、Clash Verge Rev、Clash Nyanpasu 等),第一次啟動最常遇到的三類阻擋,分別來自系統的三個不同層級:Gatekeeper 的公證檢查、網路擴充功能的授權流程、鑰匙圈的存取控制。這三類問題的彈出視窗文字很相似,但處理方式完全不同,混用指令往往越修越亂。

本文按「先確認是哪一層卡住、再依系統版本找對應設定入口」的順序整理完整處理步驟,涵蓋 macOS 13 Ventura 及之後版本的「系統設定」路徑,並附上 macOS 12 Monterey 及更早版本「系統偏好設定」的對照入口。

錯誤定位:三種彈窗對應三個層級

多數 Clash 客戶端由社群開發者維護,並未透過 Apple 付費開發者簽署與公證流程,或安裝檔在重新打包後簽署已失效,系統因此會要求使用者手動完成一次放行確認。請先對照下表比對彈窗文字,確認目前卡在哪一層,再跳到對應章節處理。

彈窗文字所屬層級處理入口
「已損毀,無法打開。你應該將它移到垃圾桶」下載隔離屬性終端機移除 quarantine(第二節)
「無法打開,因為無法驗證開發者」/「Apple 無法檢查其是否含有惡意軟體」Gatekeeper 公證檢查按住 Control 打開或「仍要打開」(第三節)
「想要過濾網路內容」/「已阻止載入系統軟體」,增強模式無法開啟網路擴充功能授權系統設定三處放行(第四節)
啟動時反覆彈出「想要使用鑰匙圈中的機密資訊」鑰匙圈存取控制永遠允許或修復鑰匙圈(第五節)

以上四類錯誤可能同時出現:請先解決「打不開」,再處理「開得了但增強模式沒作用」,最後處理「每次啟動都要求輸入密碼」。依本文順序執行即可,不需要跳步。

「已損毀,無法打開」:移除下載隔離屬性

透過瀏覽器或聊天工具下載的 dmg、zip 檔案,系統會自動附加 com.apple.quarantine 擴充屬性。帶有此屬性的應用程式若簽署驗證失敗,彈窗文字就會顯示「已損毀」。正確做法是移除這個屬性,而不是反覆重新下載——重新下載的安裝檔仍會帶有隔離屬性,結果完全相同。

  1. 將應用程式從 dmg 拖到「應用程式」資料夾,確認最終路徑為 /Applications/ClashX.app(以實際應用程式名稱為準)。
  2. 打開「終端機」(啟動台 → 其他 → 終端機)。
  3. 執行以下指令,輸入登入密碼(輸入時畫面不會顯示任何字元,屬正常現象)後按下 Enter。
sudo xattr -rd com.apple.quarantine /Applications/ClashX.app

參數說明:-r 遞迴處理 app 套件內所有檔案,-d 刪除指定屬性。路徑中含空格時請用英文引號包住整個路徑;也可以在指令結尾保留一個空白,再把應用程式圖示從 Finder 直接拖進終端機視窗,路徑會自動補齊,避免手動輸入出錯。

注意事項

此指令的作用是讓這一個應用程式跳過 Gatekeeper 檢查,僅建議對來自官方 GitHub 儲存庫或可信管道取得的安裝檔執行;來源不明的安裝檔請直接刪除,不要放行。

「無法驗證開發者」:Gatekeeper 一次性放行

這類彈窗比「已損毀」溫和許多,系統內建一次性放行機制,不需要使用終端機。以下兩種方法任選一種即可。

方法一(建議):在 Finder 中找到應用程式,按住 Control 點按圖示(或用兩指點按),選擇「打開」;此時彈窗中會多出「打開」按鈕,點擊後系統會記住這次的選擇,之後直接雙擊圖示即可正常啟動。

方法二:應用程式剛被阻擋的一小時內,打開「系統設定 → 隱私權與安全性」,往下捲動到「安全性」區塊,會看到「已阻止使用 xxx」的提示,點按「仍要打開」並輸入密碼確認。

版本對照:macOS 13 Ventura 及之後版本,入口在「系統設定 → 隱私權與安全性」;macOS 12 Monterey 及更早版本,入口在「系統偏好設定 → 安全性與隱私權 → 一般」,需先點按視窗左下角的鎖頭圖示解鎖,才能點選「仍要打開」。

不建議的做法

部分舊教學會建議執行 sudo spctl --master-disable 開啟「任何來源」。此操作會關閉整台電腦的 Gatekeeper,之後所有新下載的應用程式都不再經過檢查,影響範圍過大。逐一放行單個應用程式已能滿足所有使用情境,不建議更動全域設定。

網路擴充功能授權:增強模式與 TUN 模式

ClashX Meta 的「增強模式」與 mihomo 系客戶端的 TUN 模式,本質上都是安裝一個系統層級的網路擴充功能來接管整台裝置的流量。macOS 對這類擴充功能強制要求使用者明確授權,第一次啟用時會依序出現兩種系統彈窗:

  • 「"xxx"想要過濾網路內容」:內容過濾器授權,點選「允許」。
  • 「已阻止載入來自開發者 xxx 的系統軟體」:系統擴充功能載入授權,需前往設定中點選「允許」。

macOS 13 及之後版本,請依序核對以下三處授權入口:

  1. 「系統設定 → 網路 → 篩選條件」:確認客戶端對應的篩選器開關已打開;若第一次彈窗時誤按「不允許」,可在此重新打開。
  2. 「系統設定 → 一般 → 登入項目與擴充功能 → 網路擴充功能」:確認客戶端擴充功能已啟用。
  3. 「系統設定 → 隱私權與安全性 → 安全性」:出現「已阻止」提示時點選「允許」,部分系統版本需要重新啟動 Mac 才會生效。

完成授權後仍無效時,建議依序處理:從選單列圖示完全退出客戶端再重新啟動;在客戶端設定中先關閉再開啟增強模式或 TUN 開關;檢查是否同時安裝了其他代理工具的網路擴充功能——同一時刻只能有一套 TUN 裝置生效,發生衝突時後啟動的一方會失敗。

TUN 模式的優勢在於不依賴系統代理設定,可以接管不遵守系統代理規則的應用程式流量(部分命令列工具、遊戲客戶端、沙盒應用程式)。一般網頁瀏覽只需開啟系統代理即可,需要整機接管時才啟用增強模式或 TUN。

鑰匙圈反覆彈窗:授權寫入與登入鑰匙圈修復

客戶端設定系統代理、安裝特殊權限輔助工具、讀取訂閱中的節點憑證時,都需要存取登入鑰匙圈。彈窗顯示「xxx 想要使用您儲存在鑰匙圈中的機密資訊」屬於正常流程,點選「永遠允許」一次即可;若每次啟動都彈出,代表授權沒有成功寫入鑰匙圈。

  1. 在彈窗中輸入登入密碼,點按「永遠允許」——不是「允許」,「允許」只對這一次的處理程序生效。
  2. 仍持續反覆彈窗:打開「鑰匙圈存取」,左側選擇「登入」鑰匙圈,搜尋客戶端名稱,雙擊對應項目,切換到「存取控制」分頁,選擇「允許所有應用程式存取這個項目」,或把客戶端加入「永遠允許」清單。
  3. 變更 macOS 登入密碼後出現全系統連環彈窗:代表登入鑰匙圈密碼與帳戶密碼已不同步。打開鑰匙圈存取,選單列「鑰匙圈存取 → 偏好設定 → 還原預設鑰匙圈」,重建後鑰匙圈密碼會自動與登入密碼對齊。

操作前請先確認

「還原預設鑰匙圈」會清空該鑰匙圈中儲存的所有密碼與憑證(網站密碼、Wi-Fi 密碼等),操作前請確認重要憑證已另行備份,或可從 iCloud 鑰匙圈恢復。

另外,應用程式每次更新後簽署識別碼可能會變動,舊的「永遠允許」記錄也會隨之失效,更新後第一次啟動需要再授權一次,這是正常現象,並非故障。

架構選錯:Apple 晶片與 Intel 安裝檔

「已損毀」的另一個常見原因是安裝檔架構選錯。點按螢幕左上角 選單 →「關於這台 Mac」:「晶片」欄位顯示 Apple M 系列的是 arm64 機型,顯示 Intel 的是 x86_64 機型。Apple 晶片機型應下載名稱含 arm64 或 universal 的安裝檔,Intel 機型則選擇 x86_64。

Apple 晶片機器若確實需要執行 Intel 版客戶端,請先安裝 Rosetta 2 轉譯層:

softwareupdate --install-rosetta --agree-to-license

主流客戶端(ClashX Meta、Clash Verge Rev、Clash Nyanpasu)皆提供雙架構分發版本,直接選擇對應架構的原生安裝檔,比依賴轉譯更穩定,資源占用也更低。

安裝後的驗證清單

  1. 選單列出現客戶端圖示,能打開面板、能看到節點列表。
  2. 在終端機執行 scutil --proxy,確認 HTTPEnable 為 1、HTTPPort 為客戶端所使用的埠號(ClashX 預設 7890,Clash Verge Rev 預設 7897)。
  3. 執行 lsof -nP -iTCP:7890 -sTCP:LISTEN(埠號請按實際情況修改),確認客戶端行程正在監聽中。
  4. 匯入訂閱連結,代理模式選擇「規則」,用瀏覽器連上境外網站驗證連線是否正常。
  5. 開啟增強模式或 TUN 後,用一個不走系統代理的應用程式再做一次驗證。

以上每一步都通過,代表三層權限已全部就位。之後若遇到訂閱更新、規則分流、局域網路共享等問題,可繼續查閱站內教學與名詞解釋頁面。

DOWNLINK READY

下載 Clash 客戶端

macOS arm64 與 x86_64 雙架構客戶端,以及 Windows、Linux、Android 版本,皆可在下載頁按平台取得。

下載 Clash 最新版