Clash macOS 安裝權限設定:網路擴充功能與鑰匙圈提示處理
說明首次啟動時網路擴充功能、系統代理與鑰匙圈授權的用途,並整理遭拒絕後重新開啟權限的方法。
macOS 權限提示對應哪些 Clash 功能
macOS 上的 Clash 圖形用戶端通常由介面、Clash 或 mihomo 核心、系統代理控制模組,以及可選的 TUN 接管模組組成。首次啟動時出現的系統提示不盡相同,具體取決於用戶端的實作方式、macOS 版本與目前啟用的功能。一般規則代理、系統代理與 TUN 模式所需的權限,也不屬於同一層級。
只使用系統代理時,用戶端主要會將 macOS 目前網路服務的 HTTP、HTTPS 或 SOCKS 代理指向本機監聽連接埠。瀏覽器及遵循系統代理設定的應用程式會將連線交給 Clash 核心,再由規則決定使用直連、代理節點或其他策略組。用戶端可能需要管理員授權來安裝輔助服務或修改網路設定,但不一定會註冊網路擴充功能。
啟用 TUN 模式後,用戶端需要建立虛擬網路介面並調整系統路由,讓不讀取系統代理的程式也能進入 Clash。部分用戶端使用 Apple Network Extension 框架,部分用戶端則透過具備管理權限的背景服務建立虛擬介面。因此,同樣是 TUN 功能,不同用戶端顯示的提示可能是「允許網路擴充功能」、「加入 VPN 設定」、「安裝輔助工具」或管理員帳戶驗證。
鑰匙圈用於儲存或讀取受保護的認證資料。用戶端可能會將輔助服務授權資訊、代理驗證資訊或其他敏感設定存入登入鑰匙圈。請區分鑰匙圈存取視窗與一般管理員驗證視窗:前者通常會明確提到「鑰匙圈」或某個鑰匙圈項目,後者則用於確認系統層級修改,不能只憑視窗位置判斷兩者相同。
| 提示類型 | 常見用途 | 遭拒絕後的影響 |
|---|---|---|
| 管理員帳戶驗證 | 安裝背景輔助服務、修改受保護的網路設定 | 服務模式或 TUN 功能可能無法啟用 |
| 網路擴充功能或 VPN 設定 | 建立受系統管理的虛擬網路通道 | TUN 接管無法啟動,一般系統代理可能仍可使用 |
| 鑰匙圈存取 | 讀取或儲存受保護的授權與驗證資料 | 可能反覆要求輸入密碼,或無法還原相關設定 |
| 通知權限 | 顯示連線、更新與背景狀態 | 不影響核心代理連線,但狀態提醒會減少 |
Clash macOS 首次啟動設定順序
安裝後先將應用程式移至「應用程式」資料夾,再從該資料夾啟動。直接在下載資料夾或磁碟映像檔中執行,可能導致輔助服務路徑變更、自動啟動失效,升級時也更容易留下舊元件。若系統提示應用程式來自網際網路,確認來源後再繼續開啟。
-
先啟動用戶端,不要立即開啟 TUN。
等待介面顯示核心已在執行,確認本機代理連接埠沒有衝突。常見連接埠由設定中的
port、socks-port或mixed-port決定,實際數值以目前設定為準。 -
匯入有效設定或訂閱。
訂閱通常會提供節點、策略組與規則。匯入完成後手動更新一次,確認沒有 YAML 解析錯誤,並在策略組中選擇可用節點。網路權限只能讓流量進入核心,無法修復失效節點或錯誤訂閱。
-
先測試一般系統代理。
開啟「系統代理」後造訪測試頁面,觀察用戶端的連線記錄。若日誌中能看到網域、規則與策略組,表示應用程式流量已進入 Clash。此時若連線失敗,應優先檢查節點與規則,而不是繼續增加系統權限。
-
視需要安裝服務模式或開啟 TUN。
只有確實需要接管命令列程式、遊戲、虛擬機器相關流量,或不遵循系統代理的應用程式時,才啟用 TUN。系統跳出網路擴充功能、VPN 設定或輔助工具提示後,依照用戶端介面提供的步驟完成授權。
-
重新啟動用戶端並複查開關。
輔助服務安裝成功後,完全退出用戶端再重新開啟。不要只關閉主視窗,因為選單列應用程式可能仍在背景執行。重新進入後檢查系統代理、TUN 與策略模式是否維持預期狀態。
網路擴充功能遭拒後如何重新開啟
首次跳出網路擴充功能請求時選擇「不允許」,通常不會損壞 Clash 設定,但對應的 TUN 或 VPN 接管功能會維持不可用。重新授權的入口會隨 macOS 版本調整,介面名稱也可能略有不同,建議使用系統設定的搜尋功能定位。
在系統設定中尋找擴充功能狀態
較新的 macOS 可先開啟「系統設定」,在搜尋框輸入「網路擴充功能」、「VPN」或「過濾器」。常見位置包括「網路」下的「VPN 與過濾器」,以及「一般」下「登入項目與擴充功能」中的「網路擴充功能」。若清單中出現目前的 Clash 用戶端或其輔助元件,開啟對應項目,再返回用戶端重試 TUN。
部分版本會在「隱私權與安全性」頁面底部顯示遭阻擋的系統軟體或擴充功能。這類提示通常只會在安裝後的有限時間內出現。按下允許後,系統可能要求管理員帳戶驗證,也可能要求退出應用程式或重新啟動 macOS。重新啟動前請先儲存工作,並正常退出其他程式。
系統設定中找不到對應項目
如果網路擴充功能清單沒有任何相關記錄,可能是用戶端尚未真正發起註冊、應用程式仍在磁碟映像檔中、輔助元件安裝失敗,或目前用戶端根本不使用 Network Extension 框架。此時不應反覆尋找不存在的開關,可依以下順序處理:
- 退出用戶端,並在「活動監視器」中確認相關介面程序已經結束。
- 確認應用程式位於「應用程式」資料夾,且沒有同時保留多個不同版本並交替啟動。
- 重新開啟用戶端,在設定中關閉再開啟 TUN 或服務模式,讓應用程式重新觸發安裝流程。
- 若用戶端提供「安裝服務」、「修復服務」或「重新安裝輔助元件」,請使用內建入口處理。
- 仍未出現提示時,查看用戶端日誌,確認是權限錯誤、服務未安裝,還是設定欄位導致核心啟動失敗。
某些基於 mihomo 的用戶端會使用特權輔助服務管理 TUN,而不是在系統設定中顯示獨立的網路擴充功能。這種情況下,管理員驗證與服務狀態更重要。判斷依據應包括用戶端文件、日誌中的服務啟動結果,以及系統是否建立對應的虛擬介面,不能把「清單中沒有網路擴充功能」直接等同於安裝失敗。
鑰匙圈密碼提示與重複彈窗處理
macOS 的「登入」鑰匙圈通常會在使用者登入時自動解鎖。Clash 用戶端或其輔助元件讀取受保護項目時,系統可能跳出存取確認視窗。視窗通常會顯示要求存取的應用程式與鑰匙圈項目名稱,並提供拒絕、允許一次或永遠允許等選項。請先核對應用程式路徑與名稱,再決定授權範圍。
若只是首次啟動或用戶端剛完成升級,可選擇允許一次以觀察後續行為。只有在來源、簽章與用途都明確,且該項目確實需要讓背景服務持續讀取時,才考慮持續授權。輸入框要求的通常是目前 macOS 使用者的登入密碼,而不是訂閱服務密碼、代理節點密碼或 Apple 帳號密碼。
登入密碼正確但鑰匙圈仍不接受
修改 macOS 登入密碼後,登入鑰匙圈的舊密碼可能沒有同步更新。此時系統登入已成功,但舊鑰匙圈仍使用先前的密碼。可以開啟 macOS 內建的「鑰匙圈存取」,檢查「登入」鑰匙圈是否處於鎖定狀態,並嘗試使用舊登入密碼解鎖。若仍記得舊密碼,可在鑰匙圈設定中更新密碼,使其與目前帳戶一致。
如果已無法找回舊密碼,應先評估鑰匙圈中儲存的其他帳戶憑證。重設預設鑰匙圈會影響更多應用程式,不應作為處理單一 Clash 提示的第一步。較穩妥的做法是先定位與目前用戶端明確相關的項目,退出用戶端後備份必要資訊,再刪除該項目並重新啟動,讓用戶端重新建立授權記錄。
每次啟動都要求授權
- 檢查是否每次都從不同路徑啟動應用程式,例如輪流使用下載資料夾、磁碟映像檔與「應用程式」資料夾。
- 確認用戶端升級後應用程式簽章或元件名稱是否發生變化;舊的鑰匙圈存取控制可能不再符合新程式。
- 檢查「登入」鑰匙圈是否會在登入後自動解鎖,以及是否被安全性政策提前鎖定。
- 避免刪除整個鑰匙圈。只處理名稱與歸屬都能確認的用戶端項目。
- 如果彈窗名稱指向陌生程式,請拒絕請求,並檢查登入項目、背景項目與目前執行中的程序。
系統代理開啟後沒有效果的檢查方法
系統代理開關成功不代表節點一定可用。正確的排查順序是確認代理設定已寫入、核心正在監聽、流量已進入日誌、規則選取正確策略,最後再檢查遠端節點。拆開檢查這些環節,可以避免因為一次網頁無法開啟就重複安裝權限元件。
查看 macOS 目前的代理狀態
可在終端機中使用系統內建指令,查看動態儲存區中的代理設定:
scutil --proxy
輸出中的 HTTP、HTTPS 或 SOCKS 啟用狀態與連接埠,應與 Clash 用戶端顯示的本機監聽資訊一致。若用戶端已開啟系統代理,但指令仍顯示未啟用,可先關閉開關,等待數秒後重新開啟,並檢查是否有其他網路工具立即覆寫設定。
也可以針對特定網路服務檢查設定。網路服務名稱可能是「Wi-Fi」、USB 網卡名稱或企業設定建立的服務,請先在系統網路設定中確認實際名稱:
networksetup -getwebproxy "Wi-Fi"
networksetup -getsecurewebproxy "Wi-Fi"
networksetup -getsocksfirewallproxy "Wi-Fi"
確認本機連接埠與設定一致
Clash 設定可能使用獨立的 HTTP 與 SOCKS 連接埠,也可能透過 mixed-port 提供混合入口。如果系統代理指向舊連接埠,而新設定已修改監聽連接埠,開關看似正常,連線仍會被拒絕。請檢查用戶端總覽頁與目前生效的設定,不要只查看訂閱檔案的原始內容,因為用戶端可能在執行時合併或覆寫欄位。
日誌完全沒有新增連線時,問題通常位於系統代理寫入、應用程式繞過代理或本機連接埠之前;日誌有連線但顯示 timeout,應繼續檢查節點、DNS 與遠端可達性;日誌明確顯示 DIRECT,則需要核對規則順序與目前模式。Clash 規則會由上至下比對,命中後通常不會繼續尋找。
關閉用戶端後恢復代理
正常退出時,用戶端通常會撤銷由它寫入的系統代理。若程式異常終止後瀏覽器無法連線,可重新啟動同一個用戶端,先開啟再關閉系統代理,然後正常退出。也可以在「系統設定」的目前網路服務詳細資料中手動關閉 HTTP、HTTPS 與 SOCKS 代理。若不清楚網路服務名稱與原有企業設定,請勿批次執行修改指令。
TUN 模式的權限、DNS 與虛擬介面
TUN 模式透過虛擬網路介面接收 IP 流量,再交由 Clash 或 mihomo 核心處理。它適合不遵循系統代理的應用程式,但也更容易與其他 VPN、虛擬機器網路、容器工具及安全性過濾軟體發生衝突。一般網頁代理已能滿足需求時,沒有必要為了「權限更完整」而額外開啟 TUN。
啟用 TUN 後,用戶端可能要求管理員權限安裝常駐程式,或請求加入 VPN 設定。授權成功後,系統網路介面中可能出現 VPN 或過濾器項目,終端機的網路介面清單中也可能出現 utun 介面。macOS 本身及其他應用程式也會建立 utun,因此僅看到該名稱不能證明它一定屬於 Clash,應結合開啟前後的變化與用戶端日誌判斷。
mihomo 設定中的 TUN 常見欄位包括 enable、stack、auto-route 與 auto-detect-interface。圖形用戶端可能自動產生這些欄位,也可能用介面開關覆寫訂閱中的值。修改 YAML 前應先確認用戶端採用的是「訂閱原始設定」、「覆寫設定」還是「執行時合併設定」,避免更新訂閱後手動修改被覆寫。
DNS 是 TUN 排查中的關鍵環節。網域必須先完成解析,之後連線才能依網域規則或 IP 規則分流。若開啟 TUN 後只有網域無法存取,而直接存取已知 IP 有回應,應檢查 Clash DNS 模組是否啟動、上游 DNS 是否可達,以及其他 VPN 是否強制接管 DNS。若日誌出現 DNS 迴圈或查詢持續逾時,請先暫時退出其他網路接管工具,再單獨測試 Clash。
權限已允許但 Clash 仍無法連線
系統權限只是本機連線鏈路的一部分。網路擴充功能顯示已允許、鑰匙圈不再提示後,連線仍可能受訂閱過期、節點無法連線、系統時間錯誤、連接埠衝突或規則設定影響。建議依照由本機到遠端的順序檢查。
-
檢查核心狀態。
確認用戶端沒有顯示核心退出、設定解析失敗或啟動迴圈。YAML 縮排錯誤、重複連接埠及目前核心不支援的欄位,都可能讓核心在取得權限後仍無法執行。
-
更新訂閱並查看更新時間。
手動更新一次設定,記錄回傳的錯誤訊息。訂閱網址失效、網路請求遭攔截與設定內容格式錯誤,需要分別處理;反覆點擊更新無法改變錯誤類型。
-
測試多個節點。
延遲測試只能作為可達性參考,不能完全代表實際連線品質。選擇不同地區與協定的節點進行測試,觀察日誌顯示的是連線逾時、握手失敗還是 DNS 失敗。
-
校正系統日期與時區。
明顯錯誤的日期、時間或時區會導致 TLS 連線驗證失敗。開啟 macOS 的日期與時間設定,啟用自動設定,並確認目前時區正確。
-
退出其他網路接管程式。
其他 VPN、代理用戶端、內容過濾器與企業安全性軟體可能修改預設路由或 DNS。暫時退出後重新測試,但企業管理裝置上的安全性元件應遵循組織管理要求。
-
複查目前模式與策略組。
規則模式依賴設定中的規則順序與策略選擇;全域模式通常會將流量交給指定的全域策略;直連模式則不會使用代理節點。模式選錯時,即使權限與節點都正常,也會得到與預期不同的連線結果。
升級用戶端後 TUN 突然失效
升級可能同時替換圖形程式、核心與輔助服務。請先完全退出舊程序,再從「應用程式」資料夾啟動新版本。若介面提示服務版本不相容,使用用戶端提供的解除安裝或修復服務入口重新安裝輔助元件。完成管理員驗證後重新啟動用戶端,檢查網路擴充功能或 VPN 項目是否仍處於啟用狀態。
不要將舊版與新版放在不同資料夾中反覆啟動。系統授權可能繫結應用程式識別、簽章與元件路徑,交替執行會讓鑰匙圈存取與背景服務狀態更難判斷。確認新版本設定可用後,再依照用戶端提供的方式清理舊元件。
適合提交問題的診斷資訊
向用戶端維護者回報時,可提供 macOS 主要版本、Mac 晶片類型、用戶端版本、核心類型、問題發生步驟,以及經過隱藏處理的日誌片段。訂閱網址、節點伺服器網址、驗證資訊與本機帳戶資訊不應公開。日誌應保留錯誤發生前後的上下文,而不是只截取「連線失敗」一行。