macOSでClashクライアントをインストール:ネットワーク拡張機能の許可とキーチェーンダイアログの正しい対処法

macOSで初回起動時に発生するセキュリティ警告、ネットワーク拡張機能の許可、キーチェーンアクセスのダイアログを、実際の設定画面の手順どおりに解説。どこをクリックすべきか、なぜこの権限が必要か、許可に失敗した場合のリセット方法まで説明します。

macOSでClashクライアントを動かすと出てくるシステムダイアログとは

Windowsの場合、Clash系クライアントの初回起動はSmartScreenの警告を1回消すだけで済むことが多いです。一方macOSでは手順がやや長く、通常は3種類のシステムレベルの拦截に順番に遭遇します。「開けません、開発元を確認できません」というセキュリティ警告、システム拡張機能・ネットワーク拡張機能の許可リクエスト、そしてキーチェーンアクセスのダイアログです。この3種類はそれぞれ異なるシステムの仕組みに対応しており、対処方法も違います。まとめて操作してしまうと選択を誤りやすく、プロキシ機能が「インストールしたのに効かない」という状態になりがちです。

これらのダイアログはクライアント自体の不具合ではなく、macOSがCatalina以降段階的に強化してきたセキュリティポリシーによるものです。Appleの公証(ノータライズ)を受けていないアプリは手動で許可する必要があり、システムのネットワーク層を制御する機能(つまりTUNモード)はシステム拡張機能フレームワークを通じて個別に許可を得る必要があります。さらに、システムキーチェーンへの読み書きを伴う操作(プロキシ設定やローカル認証情報の保存など)は毎回ユーザーの確認が求められます。以下、表示される順番どおりに画面ごとに解説します。

ステップ1:セキュリティ警告——「開けません、開発元を確認できません」

インストーラーをダウンロードして展開後、アプリのアイコンをダブルクリックすると、ほとんどの場合「開けません、開発元を確認できません」または「不明な開発元からのアプリです」という表示が出ます。これはGatekeeperの標準動作で、Appleの公証プロセスを経ていないアプリに対して発生するもので、インストーラー自体に問題があるわけではありません。対処法は以下のとおりです。

  1. すぐに「ゴミ箱に入れる」を押さないこと。ダイアログの「キャンセル」を押すか、そのまま閉じてください。
  2. 「システム設定」→「プライバシーとセキュリティ」を開き、ページ下部の「セキュリティ」欄までスクロールすると「アプリ名」の使用がブロックされましたという表示があるので、右側の「このまま開く」をクリックします。
  3. システムが再確認のダイアログを表示するので、現在のログインパスワードを入力するか、Touch IDで確認すればアプリが正常に起動します。

「プライバシーとセキュリティ」に該当の表示が見当たらない場合は、アプリのアイコンを右クリックしてメニューから「開く」を選ぶ方法でも同様の確認ダイアログが表示され、効果は同じです。この操作は初回起動時に1回だけ必要で、以降は通常のダブルクリックで開けます。

補足

macOSのバージョンによって「プライバシーとセキュリティ」内「セキュリティ」欄の表示文言は多少異なりますが、「このまま開く」ボタンの位置と役割は変わりません。表示に従って順番に確認していけば、ターミナルで追加のコマンドを実行する必要はありません。

ステップ2:ネットワーク拡張機能の許可——TUNモードに個別の許可が必要な理由

セキュリティ警告を解除するとアプリは正常に起動しますが、TUNモード(全体の通信を引き受け、アプリ層とシステム層の両方でプロキシを実現する機能)を有効にすると、「ネットワーク拡張機能」または「システム拡張機能」の許可リクエストが表示されます。この段階は「止まってしまった」と誤解されやすいポイントで、ダイアログがすぐにシステム設定画面へ遷移せず、クライアント側の画面でユーザーの手動操作を待っている状態になることがあります。

ネットワーク拡張機能の許可は、AppleのNetworkExtensionフレームワークに対応するものです。システムのネットワークスタック層で仮想ネットワークインターフェースを作成し通信を転送する機能は、必ずこのフレームワークを通じて権限を申請する必要があり、これはシステムレベルのセキュリティ設計であって、クライアント側が意図的に増やした手順ではありません。具体的な操作手順は次のとおりです。

  1. クライアントでTUNモードを有効にした後、「システム設定」→「プライバシーとセキュリティ」→「ネットワーク拡張機能」に移動します(バージョンによっては「システム設定」→「一般」→「ネットワーク」→「VPNとフィルタ」付近の拡張機能一覧にあります)。
  2. 一覧から対象のクライアントの項目を見つけ、スイッチを許可状態にします。一覧に該当項目が全く表示されない場合は、いったんクライアントに戻ってTUNモードの有効化を再度実行すると、システム拡張機能が再登録されます。
  3. スイッチがオンになったことを確認したら、クライアント側の画面に戻ってTUNモードの有効化を再試行してください。通常はこの時点で即座に反映され、許可のダイアログは再表示されません。

一部の機種では、許可に成功した後もシステムを1回再起動しないと拡張機能が完全に読み込まれない場合があります。スイッチはオンになっているのにクライアント側でTUNモードの起動失敗が表示される場合は、まず再起動を試し、それから他の原因を調べてください。

注意

TUNモードが不要で、システムプロキシ方式(手動設定、またはクライアントが自動でシステムプロキシに書き込む方式)のみで利用する場合は、ネットワーク拡張機能のこの手順を完全にスキップできます。ルール分岐や接続先の切り替えといった通常の利用には影響しません。TUNモードは主に、システムプロキシ設定に対応していないアプリ(一部のコマンドラインツールやゲームクライアントなど)もプロキシ経由にするために使われます。

ステップ3:キーチェーンアクセスのダイアログ——「常に許可」を選ぶべきタイミング

ネットワーク拡張機能の許可が完了した後、一部のクライアントは設定の保存、ローカル認証情報の書き込み、システム証明書の読み取りを行う際にキーチェーンアクセスのダイアログを表示し、「アプリ名がキーチェーンに保存されている機密情報にアクセスしようとしています」と表示されます。このダイアログはネットワーク権限とは無関係で、macOSのキーチェーンサービスがローカルの機密情報の読み書きを保護する通常の仕組みです。

対処の原則はシンプルです。それがクライアント自身の操作によるものだと確信できる場合(設定の保存、自動起動の有効化、サブスクリプションのインポートなどを行った直後など)は「常に許可」を選び、起動ごとに繰り返し表示されるのを防ぎます。表示の原因がはっきりしない場合は、まず「今回は許可」を選んで機能が正常に動くか確認し、問題なければ次回表示時に「常に許可」に変更してください。

キーチェーンのダイアログで誤って「許可しない」を選んでしまった場合、設定を保存してもクライアントを再起動すると初期設定に戻ってしまったり、自動起動のオプションがチェックできなくなったりする症状が出ることが多いです。この場合は、標準の「キーチェーンアクセス」アプリを開き、「ログイン」キーチェーン内でクライアント名を検索して該当の項目を見つけて削除し、クライアントを再起動すれば許可のダイアログが再度表示されます。その際は必ず「常に許可」を選んでください。

許可に失敗した場合・ダイアログが表示されない場合のリセット方法

ごく稀に、ネットワーク拡張機能の許可フローが止まってしまうことがあります。スイッチをオンにしても反応がない、または「ネットワーク拡張機能」の一覧に項目が現れたり消えたりを繰り返す場合です。これは通常、システム拡張機能の登録状態に異常が生じているためで、以下の順序でリセットできます。

  1. クライアントを完全に終了する(ウィンドウを閉じるだけでなく、メニューバーのアイコンから「終了」を選ぶか、アクティビティモニタでプロセスを終了する)。
  2. 「システム設定」→「プライバシーとセキュリティ」→「ネットワーク拡張機能」に移動し、一覧に古い項目が残っていればオフにするか削除する。
  3. クライアントを再度起動し、設定内でTUNモードの有効化を再実行して、システムに許可リクエストを再表示させる。
  4. それでもダイアログが出ない場合は、macOSを一度再起動してください。システム拡張機能のデーモンは再起動後に再初期化されます。

再起動後も問題が解決しない場合は、インストーラー自体のバージョンが古く、現在のシステムバージョンの拡張機能フレームワークと互換性がない可能性が高いです。ダウンロードページで現在のシステムのアーキテクチャ(Apple SiliconかIntelか)に対応した最新のインストーラーを確認し、再インストールすることをおすすめします。新しいバージョンをインストールする前に、旧バージョンを完全にアンインストールしておくと、新旧の拡張機能登録が競合するのを避けられます。

よくある質問:許可はすべて通ったのにプロキシが効かない

セキュリティ警告、ネットワーク拡張機能、キーチェーンの3種類のダイアログをすべて正しく処理してもプロキシが効かない場合、問題は許可の段階ではなく、接続先の疎通、ルール設定、あるいはシステムプロキシのスイッチ自体にあることが多いです。この先の調査手順はWindowsやLinuxでも共通です。まずクライアント側のプロキシスイッチがオンになっているか確認し、次に個々の接続先の疎通をテストし、最後にルールモード(グローバルプロキシ/ルール分岐/直接接続)が想定どおりかを確認します。許可系のダイアログが影響するのは「クライアントがシステム権限を得られるかどうか」だけで、「接続先そのものが疎通しているかどうか」には影響しません。

また、macOS上ではサードパーティのセキュリティソフトや企業管理のMDM構成プロファイルが、システム拡張機能に追加の許可リスト制限をかけている場合があり、これによってネットワーク拡張機能の権限がどうしても有効化できないケースもあります。会社から配布された端末だと分かっている場合は、クライアントを何度も再インストールするのではなく、まずIT部門にポリシーを確認することをおすすめします。

Clash クライアントをダウンロード