先辨別四種授權提示

macOS 的啟動封鎖、管理員授權、網路延伸功能許可與鑰匙圈存取,分屬不同的安全機制。排查時先記下提示的完整內容、要求存取的程序名稱、發生時間,以及剛才執行的操作。別把所有跳窗都當成「TUN 權限不足」,也不要反覆輸入密碼嘗試。

提示或狀況相關機制優先檢查
無法驗證開發者、無法檢查是否含有惡意軟體Gatekeeper 啟動檢查安裝來源、簽章與隱私權與安全性設定
安裝輔助工具時要求管理員密碼特權輔助服務授權是否剛才主動安裝或修復服務
系統延伸功能遭封鎖、要求加入 VPN 設定延伸功能或網路設定許可要求存取的程序是否與目前元件相符
存取「登入」鑰匙圈中的機密資料鑰匙圈項目的存取控制項目名稱、要求存取的程式與登入密碼

安裝位置與「無法打開」的處理方式

確認 macOS 版本與處理器

  1. 打開 Apple 選單 →「關於這台 Mac」,記下 macOS 版本,以及「晶片」或「處理器」資訊。Apple M 系列屬於 Apple Silicon;Intel 機型請選擇 x86_64 安裝套件。
  2. 從下載頁面選擇適用於 macOS 的處理器架構。若提供通用套件,仍須確認該版本要求的最低系統版本;不要只看檔名判斷是否相容。
  3. 打開磁碟映像檔,將 App 拖移至「應用程式」。結束從映像檔執行的舊版本,退出映像檔,再從「應用程式」啟動。
  4. 升級前先結束用戶端。保留現有設定,記下原本的版本、所選核心與監聽連接埠;排查問題時不要一開始就刪除整個設定資料夾。

若 App 長期從下載項目或磁碟映像檔啟動,較容易遇到路徑變動及多份副本混淆的問題。固定安裝位置後,可在 Finder 中打開「應用程式」,確認只啟動要使用的那一份。程式架構不符、系統版本過舊與簽章遭封鎖是不同問題,不能用同一個指令處理。

依系統提示決定是否允許啟動

macOS 13 Ventura、14 Sonoma 與 15 Sequoia 都可從 Apple 選單 →「系統設定」→「隱私權與安全性」檢查安全性提示。先嘗試打開 App,再查看頁面下方是否出現針對該 App 的封鎖紀錄。確認來源與 App 名稱後,若系統提供「仍要打開」,可依提示驗證身分並再次啟動。macOS 15 對部分未簽章或未經公證的 App 採取更嚴格的處理方式,不應把在 Finder 按住 Control 點選「打開」視為通用的繞過方法。

  • 提示無法驗證開發者:先確認下載來源與發行說明,再決定是否使用系統提供的例外選項。
  • 提示 App 已損壞:結束舊版本,重新下載符合處理器架構的套件,再次複製到「應用程式」。這項提示也可能與簽章或 App 內容變更有關,不一定只是網路下載中斷。
  • 提示會損害電腦或含有惡意軟體:停止執行並確認發行資訊,不要移除隔離屬性來強行啟動。
  • 受管理裝置沒有允許按鈕:請聯絡組織管理員檢查裝置管理政策,不要自行修改系統安全性政策。

若需提供簽章相關資訊給維護者,可在終端機執行以下唯讀檢查。此路徑適用於 App 以該名稱安裝在「應用程式」中的情況;若實際名稱不同,請先在 Finder 確認路徑。

sw_vers
uname -m
codesign --verify --deep --strict --verbose=2 "/Applications/Clash Nyanpasu.app"
spctl --assess --type execute --verbose=4 "/Applications/Clash Nyanpasu.app"

uname -m 在原生 Apple Silicon 終端機中通常會回傳 arm64;在 Intel 或 Rosetta 轉譯環境中則可能回傳 x86_64,因此仍應以「關於這台 Mac」的資訊選擇架構。簽章檢查結果只能作為排查線索,不代表已完整檢查程式的所有行為。不要為了安裝用戶端而關閉 Gatekeeper 或系統完整性保護。

先確認系統代理正常,再啟用服務與 TUN

建立可正常運作的基本設定

首次啟動時,先匯入可用的 Clash YAML 設定,確認已選取該設定且核心正常執行,再測試一般系統代理。用戶端介面的欄位位置會隨版本變動,以下以「系統代理」、「服務模式」、「TUN 模式」等功能名稱作為查找依據,不假設各版本的選單層級相同。

  1. 在設定頁選取要使用的設定,查看核心記錄,確認沒有 YAML 解析錯誤或連接埠遭占用的錯誤。
  2. 記下實際使用的 HTTP 或混合監聽連接埠。例如設定中有 mixed-port: 7890,才使用 127.0.0.1:7890;不要將 7890 當成所有安裝都固定使用的連接埠。
  3. 啟用系統代理,並用瀏覽器測試連線。此時先關閉 TUN,避免同時變更流量入口、路由與 DNS。
  4. 確認一般代理運作正常後,再依應用程式是否遵循系統代理設定,決定是否啟用 TUN。
# 僅適用於實際 mixed-port 為 7890 的設定
lsof -nP -iTCP:7890 -sTCP:LISTEN
scutil --proxy

lsof 可用來確認監聽中的程序;scutil --proxy 可用來查看目前的系統代理設定。連接埠正在監聽,不代表策略群組、遠端節點與 DNS 都能正常使用。若記錄顯示 address already in use,請先找出占用連接埠的程序,結束重複啟動的用戶端或調整連接埠;不要直接結束所有名稱相似的程序。

管理員密碼僅用於明確的服務操作

建立 TUN、修改路由等操作可能需要特權服務。若目前版本提供安裝或修復服務的選項,請在用戶端中主動執行,再確認系統密碼視窗中顯示的 App 或輔助工具名稱。正常的管理員授權與接著出現的鑰匙圈存取視窗是兩回事:前者是核准特權操作,後者是核准讀取特定機密項目。

  • 使用具管理員權限的帳戶安裝服務;一般帳戶請尋求管理員協助。
  • 升級後若服務與用戶端版本不一致,請先透過目前版本提供的管理選項修復服務,再重新啟動用戶端。
  • 若系統提示背景項目已停用,macOS 13、14 可檢查「系統設定」→「一般」→「登入項目」;macOS 15 則可檢查「一般」→「登入項目與延伸功能」。僅允許來源已確認的相關項目。
  • 服務安裝失敗時,請保留完整錯誤訊息。不要遞迴修改整個 App 資料夾的權限,也不要長期使用 sudo 執行圖形介面用戶端來取代正常的服務安裝。

網路延伸功能與 VPN 設定的授權範圍

只有在跳窗明確提到系統延伸功能、網路延伸功能或 VPN 設定時,才需要參考本節。其他 VPN、安全軟體或流量過濾器也可能出現類似提示。請先確認要求存取的程序,不要因為正在安裝 Clash Nyanpasu,就把同時出現的所有網路提示都歸因於它。

系統或提示檢查路徑處理原則
macOS 13/14 延伸功能遭封鎖系統設定 → 隱私權與安全性根據封鎖紀錄確認開發者與元件;只有系統提供對應選項時才允許
macOS 15 延伸功能管理系統設定 → 一般 → 登入項目與延伸功能 → 網路延伸功能檢查實際列出的元件,必要時查看該分類的詳細資訊按鈕
VPN 或過濾器設定系統設定 → 網路 → VPN 與過濾器確認所屬的 App;實際項目會依系統版本及已安裝的元件而異

允許延伸功能後是否需要重新啟動,請依系統提示為準。TUN 已啟用但沒有網路延伸功能項目,並不足以判定安裝失敗;應檢查核心是否成功建立 TUN 介面、路由是否更新,以及 DNS 記錄有無錯誤。反過來說,延伸功能已獲允許,也不代表訂閱中的節點一定能連線。

鑰匙圈反覆跳窗的處理順序

先確認要求存取的程式與項目

鑰匙圈視窗通常會說明某個程式想存取「登入」鑰匙圈中的機密資料。請記下程式名稱與項目名稱;訂閱憑證、代理驗證資料或其他 VPN 儲存的密碼,都可能在進行網路操作時出現。僅憑時間接近,無法確認要求是由 Clash Nyanpasu 主程式發出。若目前操作不涉及登入或讀取憑證,請先選擇拒絕,再返回檢查要求來源。

「允許」通常只會核准這次存取;「永遠允許」則會為該項目儲存相應的存取許可,但實際效果取決於項目的存取控制與程式身分。不要為了消除跳窗而對所有項目開放存取。App 更新、簽章變更或改由另一份副本啟動,都可能導致原有許可不再相符。

檢查「登入」鑰匙圈的狀態

  1. 使用 Spotlight 搜尋並打開「鑰匙圈存取」。macOS 15 也提供「密碼」App,但鑰匙圈項目的存取控制仍應在「鑰匙圈存取」中檢查。
  2. 選取「登入」鑰匙圈,確認是否已解鎖。密碼視窗要求的是鑰匙圈密碼,不是訂閱密碼,也不是 Apple 帳號密碼。
  3. 若管理員近期重設過本機帳號密碼,舊的「登入」鑰匙圈可能仍使用原密碼。若知道舊密碼,可使用「鑰匙圈存取」提供的更改密碼功能,將鑰匙圈密碼更新為目前的登入密碼。
  4. 依跳窗顯示的確切項目名稱搜尋並打開項目資訊;若有「存取控制」標籤,請確認允許存取的 App 是否指向目前安裝的副本。
  5. 結束其他位置的副本,從「應用程式」重新啟動,再執行一次原本的操作,確認是否仍會要求存取。

若不知道舊鑰匙圈密碼,請勿反覆嘗試帳號密碼。重設預設鑰匙圈會建立新的可用鑰匙圈,但無法因此自動解密舊項目;可能需要重新輸入先前儲存的密碼、憑證或其他登入資料。請先確認備份與復原方式;若涉及公司憑證或裝置管理身分,請尋求管理員協助。

避免大量刪除項目

反覆跳窗也可能是因為 App 無法儲存存取許可、「登入」鑰匙圈定時上鎖,或每次要求存取的程式都來自不同路徑。先檢查目前啟動的副本與項目存取控制,再考慮只重建與問題明確相關、且能重新取得的憑證。不要看到「proxy」或「VPN」就全部刪除,也不要移走整個鑰匙圈資料夾。

若需提供螢幕截圖,請遮住項目中的帳號名稱、伺服器位址與權杖。不要顯示項目的密碼內容。一般排查只需要要求存取的程式、項目名稱與錯誤訊息,不需要公開訂閱 URL。

完成授權後的驗收與故障復原

依序檢查「App 啟動 → 核心執行 → 一般代理 → 服務 → TUN」。每次只變更一項設定,並記錄修改前後的結果。以下檢查以實際設定為準,不依賴特定介面開關的顏色。

  • 啟動層:可從「應用程式」啟動;結束後重新打開,不會再次出現相同的啟動封鎖提示。
  • 核心層:記錄中沒有設定解析失敗、監聽連接埠衝突或持續退出重啟的情況。
  • 系統代理層:scutil --proxy 中的啟用項目、位址與連接埠都與用戶端記錄相符。
  • TUN 層:記錄顯示虛擬介面已成功建立。介面名稱可能包含 utun,但系統中的其他服務也會建立同類介面,因此不能只憑出現 utun 就判定成功。
  • 憑證層:再次執行相同的訂閱更新或驗證操作,不會再出現來源不明的鑰匙圈存取要求。

啟用 TUN 後若無法連線,先在用戶端關閉 TUN,再關閉系統代理,確認基本網路是否恢復;尚未確認狀況前,避免反覆切換 Wi-Fi。若 App 意外結束,可前往「系統設定」→「網路」→目前的網路服務 →「詳細資訊」→「代理」,檢查是否仍有指向本機連接埠的設定。只移除本次由用戶端設定的代理,保留原有的企業代理記錄。

回報問題時,請提供 macOS 完整版本、晶片架構、用戶端與核心版本、安裝路徑、觸發步驟,以及同一時段的記錄。記錄中的訂閱 URL、存取權杖、驗證密碼與個人網域應先遮蔽敏感資訊。如需確認欄位意義,請參閱YAML 設定手冊;若要從頭建立可用設定,請從快速入門開始。