先區分用戶端與授權類型

首次開啟 ClashX 時,管理者密碼、網路設定與鑰匙圈提示可能接連出現,但它們並非同一種授權。開始排查前,先從選單列的 App 選單開啟「關於」,記下用戶端名稱、版本及 macOS 版本。傳統 ClashX、ClashX 衍生版本,以及使用 mihomo 核心的其他用戶端,安裝輔助工具和接管流量的方式可能不同,不能把所有提示都當成同一套流程逐一尋找。

尤其要留意:開啟系統代理不代表已安裝網路擴充功能,TUN 模式也不一定會使用 Apple 的網路擴充功能架構。傳統 ClashX 通常透過特權輔助工具修改系統代理;部分其他用戶端透過特權服務建立 TUN 介面,另一些則使用 Network Extension。沒有出現擴充功能提示,不代表缺少授權。

提示或功能實際用途檢查重點
安裝輔助工具,需要管理者授權安裝或更新執行特權操作的服務App 名稱、來源,以及是否與目前操作相符
新增 VPN 設定或網路擴充功能建立由該用戶端管理的網路通道是否剛啟用相關 VPN 或通道功能
系統擴充功能遭到封鎖相關擴充功能尚未獲得系統核准開發者名稱及擴充功能所屬的 App
存取鑰匙圈中的項目讀取已儲存的認證資料或機密資訊要求存取的處理程序、項目名稱及存取範圍

首次開啟與安全性放行

先移至「應用程式」,再啟動

  1. 從下載頁依 Apple 晶片或 Intel 架構選擇用戶端。可透過 Apple 選單中的「關於這台 Mac」查看晶片或處理器資訊。
  2. 如果下載的是磁碟映像檔,開啟後將 App 拖曳至「應用程式」,再從該處啟動。請勿長期從已掛載的映像檔或下載資料夾執行。
  3. 如果出現「從網際網路下載的 App」確認視窗,請確認名稱後再選擇「打開」。這是首次啟動確認,不是網路擴充功能授權。
  4. 如果系統提示無法驗證開發者,請先確認下載來源及用戶端的維護狀態,再查看「系統設定」→「隱私權與安全性」中是否有與這次啟動相關的說明。

在 macOS 13 Ventura、macOS 14 Sonoma 及後續版本中,符合條件的封鎖記錄可能會在「隱私權與安全性」頁面底部顯示「仍要打開」。按鈕是否出現,取決於封鎖原因及系統版本,並非所有錯誤都能透過這個入口處理。macOS 15 Sequoia 調整了部分未簽署或未經公證軟體的開啟流程,不應把按住 Control 鍵按一下後選擇「打開」視為一定有效的繞過方式。

輔助工具與管理者密碼

部分 ClashX 版本在首次設定系統代理時,會提示安裝輔助工具。圖形介面 App 通常以目前使用者的權限執行;輔助工具則用來執行需要較高權限的操作。此時輸入的是本機管理者帳戶的認證資料,不是訂閱密碼、節點密碼,也不是 Apple 帳號密碼。

授權前檢查三個地方

  • 觸發操作:確認是否剛按下安裝輔助工具、修復服務或開啟系統代理。若未執行這些操作卻突然出現要求,請先取消並確認是哪個處理程序提出要求。
  • 對話框名稱:確認要求存取的 App 是目前安裝的用戶端;輔助工具名稱可能與主 App 不完全相同,請以該版本的說明為準。
  • 安裝位置:確認 App 已放在「應用程式」,避免重複搬移,或保留多個舊版本並交替啟動。

如果不小心按了「取消」,通常只會中止這次安裝。重新開啟用戶端,再次觸發安裝或修復輔助工具即可。如果每次啟動都要求重新安裝,請先結束所有同名用戶端,只保留目前使用的版本,再查看記錄中的服務安裝錯誤。不要直接刪除 /Library/PrivilegedHelperTools 中名稱相近的檔案,也不要批次移除系統服務。

由公司或學校管理的 Mac 可能會限制安裝特權服務。若沒有管理者權限,應請裝置管理者處理;重複輸入一般使用者密碼不會取得額外權限。

網路擴充功能、系統擴充功能與 VPN 設定

只有用戶端確實使用相關機制時,才需要處理擴充功能授權。Network Extension 是 Apple 提供的網路功能架構,其中部分擴充功能可作為系統擴充功能發佈;「網路擴充功能」與「系統擴充功能」並非必然互相獨立、也不一定都要逐一核准。新增 VPN 設定的確認視窗,也不能直接視為安裝核心擴充功能。

依系統版本尋找設定位置

  • macOS 13、14:先查看「系統設定」→「隱私權與安全性」中的擴充功能封鎖說明;VPN 設定則可在系統設定中搜尋「VPN」查看。
  • macOS 15:可在「系統設定」→「一般」→「登入項目與擴充功能」→「網路擴充功能」中檢查。實際顯示的項目和操作按鈕會依已安裝的擴充功能而異。
  • 後續系統版本:設定位置名稱可能有所調整。請使用系統設定的搜尋欄尋找「網路擴充功能」或「VPN」,並以系統實際顯示為準。

如果系統提示允許某位開發者的系統軟體,請先核對用戶端提供的開發者資訊。核准後,只有在系統明確要求時才重新啟動。若頁面沒有相符項目,請勿核准其他軟體的擴充功能,也不必為了「補齊權限」安裝額外元件。

如果已允許擴充功能,但 TUN 仍無法啟動,請接著查看用戶端記錄。路由設定失敗、DNS 監聽衝突,或另一個 VPN 正在接管網路,都可能造成相同的「連線無法使用」狀況。擴充功能清單顯示已啟用,只能表示系統允許載入該擴充功能,無法證明訂閱、DNS 與輸出策略都設定正確。

鑰匙圈提示:先確認項目,再決定權限

鑰匙圈提示通常會指出哪個處理程序想存取哪個項目。並非每個 ClashX 版本都會在首次啟動時要求存取鑰匙圈;只有用戶端或相關元件確實需要儲存或讀取認證資料時,才會出現提示。不要只因教學提到這個步驟,就主動允許 App 存取整個鑰匙圈。

「允許」、「永遠允許」與「拒絕」的差異

  • 允許:核准這次存取。適合已確認用途,但暫時不想保留長期許可的情況。
  • 永遠允許:為該項目記錄持續存取許可,後續存取仍受 App 身分及鑰匙圈存取控制機制限制。確認要求存取的 App 和項目後再選擇。
  • 拒絕:這次不提供認證資料。App 可能無法讀取已儲存的資訊,但通常不影響查看用戶端中的其他設定。

如果提示要解鎖「登入」鑰匙圈,所需密碼通常是該鑰匙圈的密碼。這個密碼最初往往與本機登入密碼相同;如果曾透過復原流程重設帳戶密碼,舊鑰匙圈密碼可能不會同步變更。此時反覆輸入新密碼仍會失敗,不能因此直接判定是用戶端故障。

可使用 Spotlight 搜尋並開啟「鑰匙圈存取」,在「登入」鑰匙圈中搜尋提示視窗顯示的項目名稱。對支援此操作的項目,開啟詳細資訊並檢查「存取控制」。只處理與目前用戶端明確相關的單一項目,不要刪除整個登入鑰匙圈,也不要允許所有 App 存取該項目。新版 macOS 的「密碼」App 並不能取代一般的鑰匙圈存取控制功能。

升級後反覆出現提示時的判斷方式

App 更新、簽署身分變更,或從不同位置啟動另一個副本,都可能導致原有存取許可不再相符。請先結束舊副本,從「應用程式」啟動目前版本,再確認提示中的處理程序名稱。如果無法說明要求存取瀏覽器密碼或其他 App 認證資料的原因,請先拒絕並檢查來源,不要只因名稱包含 Clash 就核准。

誤按拒絕後的恢復方式:依失敗環節處理

遭拒絕的項目恢復步驟恢復後檢查
安裝輔助工具重新啟動 App,再次觸發安裝或使用用戶端提供的服務修復功能開啟系統代理後,是否仍顯示權限錯誤
新增 VPN 設定再次啟動用戶端對應的通道功能,重新確認系統要求系統 VPN 清單與用戶端狀態是否相符
網路或系統擴充功能在系統設定中找到該 App 的擴充功能,依系統提示允許是否出現新的載入錯誤,或要求重新啟動
鑰匙圈單次存取再次執行需要認證資料的操作,必要時結束後重新開啟 App項目名稱與要求存取的 App 是否一致

復原時一次只變更一項。先關閉系統代理與 TUN,保留一般網路連線;完成相應授權後,再開啟需要的功能。不要同時切換核心、重新安裝 App、刪除設定及修改 DNS,否則很難判斷是哪個步驟解決問題或造成問題。

如果裝置受管理設定描述檔控制,部分開關可能無法變更。請記下提示原文、系統版本及用戶端版本,交由管理者確認。訂閱網址含有存取權杖,提交截圖或記錄前,請遮蔽完整網址及帳戶資訊。

完成授權後,檢查連接埠與實際流量

授權成功只是安裝流程的一部分。接著先匯入可用設定,確認核心正在執行,再開啟系統代理。系統代理主要影響遵循系統代理設定的 App;TUN 則透過虛擬介面與路由接管更多流量。瀏覽器能開啟網頁,不代表終端機、遊戲和所有背景處理程序都會使用相同的網路路徑。

用三個唯讀指令定位問題

在「終端機」中執行以下指令。範例使用 7890 作為 HTTP 或混合代理連接埠;請先查看目前設定中的 port 或 mixed-port,再替換成實際值。這裡的連接埠僅為範例,並非所有 ClashX 版本的固定預設值。

# 查看 macOS 目前的系統代理設定
scutil --proxy

# 檢查範例連接埠是否正在監聽 TCP
lsof -nP -iTCP:7890 -sTCP:LISTEN

# 明確透過本機 HTTP 代理送出請求
curl --proxy http://127.0.0.1:7890 --connect-timeout 10 --max-time 20 -I https://example.com
  • 在 scutil --proxy 的輸出中,已啟用的 HTTP 代理通常會顯示 HTTPEnable : 1、位址及連接埠;HTTPS 則會有 HTTPSEnable 等欄位。請檢查實際啟用的通訊協定,不要只尋找單一固定欄位。
  • 如果 lsof 沒有輸出,請先確認核心是否已啟動、連接埠是否輸入錯誤,以及是否改用獨立的 SOCKS 連接埠。即使連接埠正在監聽,也要確認所屬的處理程序。
  • curl 範例會強制使用指定代理,不受終端機是否讀取系統代理設定影響。連線遭拒通常應先檢查監聽連接埠;連線建立後逾時,再檢查節點、DNS 及輸出策略。

命令列工具 curl 通常不會自動採用 macOS 圖形介面的系統代理設定,因此「瀏覽器可用、終端機不可用」不應直接歸因於授權失敗。若要測試 SOCKS 入口,請依實際連接埠使用 socks5h://127.0.0.1:連接埠號碼 格式,並記得替換其中的位址與連接埠。

結束用戶端前,確認網路已恢復

首次設定完成後,建議先關閉系統代理與 TUN,再結束用戶端,確認一般網路仍可使用。如果結束後無法連線,請開啟「系統設定」→「網路」→目前使用的 Wi-Fi 或乙太網路→「詳細資訊」→「代理」,檢查是否還留有指向 127.0.0.1 的 HTTP、HTTPS、SOCKS 代理或自動代理設定。只關閉這次用戶端設定的項目,保留公司或學校網路要求的設定。

若使用 VPN 或網路擴充功能,也請檢查相應連線是否已中斷。不要為了恢復網路而批次刪除所有網路服務。完成上述檢查後,後續啟動請依序確認「核心執行、設定有效、按需求開啟代理」;只有出現明確的權限錯誤時,才返回相應的授權步驟處理。