メインコンテンツまでスキップ

VPN アプリで Proxyman が動作しない場合

VPN 接続中に Proxyman で通信をキャプチャできませんか? Proxyman で動作する VPN アプリと、FortiClient や AnyConnect などで HTTP プロキシを設定する方法をご確認ください。

一般に、VPN アプリは Proxyman、Charles Proxy、Fiddler、Wireshark を含むすべての Web デバッグプロキシアプリと競合する可能性があります。

このページでは、Proxyman で動作する VPN アプリと動作しない VPN アプリの一覧、およびその対処法を紹介します。

問題​

企業の VPN を使用している場合、Proxyman で HTTP/HTTPS 通信をキャプチャできません。

備考

VPN がシステムプロキシを変更する場合や、Mac 上のアプリがシステムプロキシを無視する場合は、Network Extensionをお試しください。キャプチャはシステムプロキシとは独立して動作しますが、VPN との互換性は環境によって異なります。HTTPS の通信には引き続き証明書の信頼と SSL Proxying が必要です。

Network Extension はベータ版で、macOS 26 以降では Proxyman PRO が必要です。

一般的な対処法​

VPN アプリは、Proxyman のローカルサーバー(127.0.0.1:9090)ではなく、VPN サーバー経由ですべての通信を送信します。そのため、Proxyman は通信をキャプチャできません。

対処法は次のとおりです:

  • VPN の設定を開き、HTTP/HTTPS プロキシを設定できる項目を探します。
  • 項目がある場合は、アドレスを 127.0.0.1、ポートを 9090 に設定します。
  • 項目がない場合は、「<Your VPN Name> config HTTP Proxy」で検索して設定方法を確認してください。

こうすると、VPN アプリがオンの状態でも Proxyman で通信をキャプチャできます。

✅ iOS 向けの新しい解決策:Atlantis + Proxyman​

  • あらゆる VPN で動作します。
  • iOS アプリの HTTP/HTTPS または WebSocket の通信をすべてキャプチャできます。
  • プロキシの設定や証明書のインストールは不要です。
  • iOS シミュレータと iOS 実機で動作します。

👉 Atlantis の使い方​

Proxyman/CharlesProxy/Fiddler で動作する VPN の一覧​

1. Tunnelblick​

設定なしで問題なく動作します。

2. FortiClient​

HTTP プロキシを Proxyman に設定すれば、問題なく動作します。FortiClient のプロキシ設定ガイドに従ってください。

3. AnyConnect​

  • AnyConnect の環境設定に HTTP プロキシの項目があれば、そこで設定してみてください。
  • VPN のホストを Proxyman のバイパスリストに追加してください:Tools → Proxy Settings → Bypass Proxy Settings…。このリストは、System Settings → Network → Wi-Fi → Details… → Proxies → "Bypass proxy settings for these hosts & domains" からも確認できます。(参考:GitHub issue #264)

4. Pulse Secure と Global Protect VPN​

解決策 1:

まず、OpenConnect をインストールする必要があります。

brew install openconnect

openconnect のインストールパスを確認します:

whereis -b openconnect

次に、/etc/sudoers を編集します:

sudo visudo -f /etc/sudoers

次の行を追加し、<openconnect-binary-path> を openconnect のバイナリパスに置き換えてください。

%admin ALL=(ALL) NOPASSWD: <openconnect-binary-path>

これで、Juniper SSL / Pulse Connect Secure プロトコルを使用して、保護されたプロキシに接続できます。

sudo openconnect --protocol nc -u <username> <proxy-url>

接続したら、Proxyman を起動してください。通常どおり通信がキャプチャされるはずです。

クレジット:@florentmorin(GitHub issue #1203より)

備考

sudo コマンドを使用する前に、セキュリティチームに相談してください。

解決策 2:

次の手順で動作する場合があります:

  1. VPN に接続し、動作することを確認します。
  2. Proxyman アプリを開きます。
  3. VPN 接続をリセットします。

クレジット:@AddictiveColors

5. Viscosity​

  1. Viscosity VPN アプリで、HTTP/HTTPS プロキシを上書きする手順に従ってください。

設定例:

#viscosity proxy-http localhost 9090
#viscosity proxy-https localhost 9090

Viscosity VPN の別の解決策:

  1. 接続設定の Advanced タブを開き、次の行を追加します:
dhcp-option HTTPPROXY 127.0.0.1:9090
dhcp-option HTTPSPROXY 127.0.0.1:9090
  1. Proxyman を起動します。以上で完了です。

参考:Charles と VPN に関する Stack Overflow の回答

6. Cisco VPN​

  1. VPN の接続を切断します。
  2. Proxyman を開きます。
  3. Tools → Proxy Settings → Bypass Proxy Settings… に移動します。
  4. VPN サーバーのドメイン(例:vpn.yourcompany.com)を追加し、Done をクリックします。
  5. VPN に再接続します。

参考:GitHub issue #264

7. Nord VPN​

  • NordVPN の場合は、以下のプロジェクトを使うと、NordVPN 経由でルーティングするローカルの HTTP/HTTPS プロキシを設定できます。そのプロキシサーバーを、Proxyman の External Proxy として使用してください。
  • GitHub 上の nordlynx-proxy

クレジット:@seidnerj(GitHub issue #264より)

8. Zscaler​

Zscaler チームによる回避策に従ってください。

Proxyman/CharlesProxy/Fiddler で動作しない VPN の一覧​

1. Sophos​

Sophos は、どの Web デバッグプロキシアプリとも動作しません。これは Sophos の既知の問題で、修正方法はありません。

セキュリティチームに依頼して、Sophos で HTTP/HTTPS プロキシを設定してもらってください。

更新情報:Sophos 10.0.4(A/V Endpoint Protection)は、新しいネットワークプロキシ拡張機能によって Proxyman で動作する可能性がありますが、CPU 使用率が急上昇する既知の問題があります。Sophos は今後の EAP リリースで修正する予定です。

クレジット:@AddictiveColors