送信プロキシ サーバーを使用するように Microsoft Entra プライベート ネットワーク コネクタを構成します。 この記事では、ネットワーク環境にすでにプロキシ サーバーが存在していることを前提としています。
まず、次の主なデプロイ シナリオを見ていきます。
- オンプレミスの送信プロキシをバイパスするようにコネクタを構成する。
- 送信プロキシを使用して Microsoft Entra アプリケーション プロキシにアクセスにするようにコネクタを構成する。
- コネクタとバックエンド アプリケーション間のプロキシを使用して構成する。
コネクタの動作の詳細については、「Microsoft Entra プライベート ネットワーク コネクタについて」を参照してください。
送信プロキシをバイパス
コネクタには、送信要求を行う基になる OS コンポーネントがあります。 これらのコンポーネントは、Web プロキシ自動発見 (WPAD) を使って自動的にネットワーク上のプロキシ サーバーの特定を試みます。
この OS コンポーネントは、wpad.domainsuffix
のドメイン ネーム システム (DNS) 検索を実行して、プロキシ サーバーの検出を試みます。 この検索が DNS で解決すると、wpad.dat
のインターネット プロトコル (IP) アドレスに対して HTTP 要求が作成されます。 この要求が、環境におけるプロキシ構成スクリプトになります。 コネクタは、このスクリプトを使用して送信プロキシ サーバーを選択します。 ただし、プロキシでさらに構成設定が必要なため、コネクタ トラフィックは引き続き失敗する可能性があります。
オンプレミスのプロキシをバイパスして Microsoft Entra アプリケーション プロキシ サービスへの直接接続を使用するように、コネクタを構成できます。 必要な構成が少ないため、直接接続がお勧めです。 ただし、一部のネットワーク ポリシーでは、トラフィックがローカル プロキシ サーバーを経由する必要があります。
コネクタの送信プロキシの使用を無効にするには、C:\Program Files\Microsoft Entra private network connector\MicrosoftEntraPrivateNetworkConnectorService.exe.config
ファイルを編集し、コード サンプルに示す system.net
セクションを追加します。
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.net>
<defaultProxy enabled="false"></defaultProxy>
</system.net>
<runtime>
<gcServer enabled="true"/>
</runtime>
<appSettings>
<add key="TraceFilename" value="MicrosoftEntraPrivateNetworkConnector.log" />
</appSettings>
</configuration>
Connector Updater サービスもプロキシをバイパスするようにするには、MicrosoftEntraPrivateNetworkConnectorUpdaterService.exe.config
ファイルに同じような変更を加えます。 このファイルは C:\Program Files\Microsoft Entra private network connector Updater
にあります。
既定の .config
ファイルに戻す必要がある場合に備えて、元のファイルのコピーを作成するようにしてください。
送信プロキシ サーバーの使用
一部の環境では、すべての送信トラフィックが例外なく送信プロキシを経由する必要がある場合があります。 そのような場合は、プロキシのバイパスは選択肢にありません。
次の図に示すように、コネクタのトラフィックが送信プロキシを経由するように構成できます。
送信トラフィックしかないため、ファイアウォール経由で受信アクセスを構成する必要はありません。
注
アプリケーション プロキシは、他のプロキシに対する認証をサポートしていません。 コネクタ/アップデータのネットワーク サービス アカウントは、認証を求められることなく、プロキシに接続できる必要があります。
手順 1:送信プロキシを経由するようにコネクタと関連サービスを構成する
環境内で WPAD を有効にし、適切に構成している場合、コネクタは送信プロキシ サーバーを自動的に検出して使用を試みます。 一方で、送信プロキシを経由するようにコネクタを明示的に構成することができます。
これを行うには、C:\Program Files\Microsoft Entra private network connector\MicrosoftEntraPrivateNetworkConnectorService.exe.config
ファイルを編集し、コード サンプルに示す system.net
セクションを追加します。 proxyserver:8080
を変更して、ローカル プロキシ サーバーの名前または IP アドレスとポートを反映させます。 IP アドレスを使用している場合でも、値にはプレフィックス http://
を付ける必要があります。
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.net>
<defaultProxy>
<proxy proxyaddress="http://proxyserver:8080" bypassonlocal="True" usesystemdefault="True"/>
</defaultProxy>
</system.net>
<runtime>
<gcServer enabled="true"/>
</runtime>
<appSettings>
<add key="TraceFilename" value="MicrosoftEntraPrivateNetworkConnector.log" />
</appSettings>
</configuration>
次に、C:\Program Files\Microsoft Entra private network connector Updater\MicrosoftEntraPrivateNetworkConnectorUpdaterService.exe.config
ファイルに同様の変更を加えて、プロキシを使用するように Connector Updater サービスを構成します。
注
defaultProxy が MicrosoftEntraPrivateNetworkConnectorService.exe.config で (既定で) 構成されていない場合、コネクタ サービスでは、%SystemRoot%\Microsoft.NET\Framework64\v4.0.30319\Config\machine.config
での使用のために defaultProxy 構成が評価されます。同じことが、Connector Updater サービス (MicrosoftEntraPrivateNetworkConnectorUpdaterService.exe.config) にも当てはまります。
手順 2:コネクタと関連サービスからのトラフィックが経由して流れることを許可するようにプロキシを構成する
送信プロキシで考慮すべき点は次の 4 つです。
- プロキシ送信規則
- プロキシの認証
- プロキシ ポート
- トランスポート層セキュリティ (TLS) 検査
プロキシ送信規則
次の URL へのアクセスを許可します。
URL | 港 / ポート | 用途 |
---|---|---|
*.msappproxy.net *.servicebus.windows.net |
443/HTTPS | コネクタとアプリケーション プロキシ クラウド サービスの間の通信。 |
crl3.digicert.com crl4.digicert.com ocsp.digicert.com crl.microsoft.com oneocsp.microsoft.com ocsp.msocsp.com |
80/HTTP | コネクタは、これらの URL を使用して証明書を検証します。 |
login.windows.net secure.aadcdn.microsoftonline-p.com *.microsoftonline.com *.microsoftonline-p.com *.msauth.net *.msauthimages.net *.msecnd.net *.msftauth.net *.msftauthimages.net *.phonefactor.net enterpriseregistration.windows.net management.azure.com policykeyservice.dc.ad.msft.net ctldl.windowsupdate.com |
443/HTTPS | コネクタでは、登録プロセス中にこれらの URL が使用されます。 |
ctldl.windowsupdate.com www.microsoft.com/pkiops |
80/HTTP | コネクタでは、登録プロセス中にこれらの URL が使用されます。 |
ファイアウォールまたはプロキシで DNS 許可リストを構成できる場合は、*.msappproxy.net
および *.servicebus.windows.net
への接続を許可できます。
完全修飾ドメイン名 (FQDN) による接続を許可することはできず、代わりに IP 範囲を指定する必要がある場合は、これらのオプションを使用します。
- すべてのアクセス先に対するコネクタの送信アクセスを許可する。
- Azure データセンターの全 IP アドレス範囲に対するコネクタの送信アクセスを許可する。 Azure データセンターの IP 範囲の一覧を使用するうえでの課題は、それらが毎週更新されることにあります。 アクセス規則が適宜更新されるようにプロセスを整備する必要があります。 IP アドレスのサブセットのみを使用すると、構成が分断されます。 最新の Azure データ センター IP 範囲は https://download.microsoft.com にダウンロードされます。 検索語「
Azure IP Ranges and Service Tags
」を使用します。 必ず関連するクラウドを選択してください。 たとえば、パブリック クラウドの IP 範囲は、「Azure IP Ranges and Service Tags – Public Cloud
」を検索すると見つかります。 米国政府のクラウドは、「Azure IP Ranges and Service Tags – US Government Cloud
」を検索すると見つかります。
プロキシの認証
プロキシの認証は現在サポートされていません。 現在はインターネット上のアクセス先に対して、コネクタの匿名アクセスを許可することをお勧めします。
プロキシ ポート
コネクタは、CONNECT メソッドを使用して TLS ベースの送信接続を確立します。 このメソッドにより、送信プロキシを経由するトンネルが設定されます。 プロキシ サーバーが、ポート 443 と 80 へのトンネリングを許可するように構成します。
注
Service Bus を HTTPS 経由で実行する場合は、ポート 443 が使用されます。 ただし、既定では、Service Bus は直接伝送制御プロトコル (TCP) 接続を試みて、直接接続に失敗した場合にのみ HTTPS に戻ってきます。
TLS インスペクション
コネクタのトラフィックに問題が生じるため、コネクタのトラフィックには TLS インスペクションを使用しないでください。 コネクタは証明書を使用してアプリケーション プロキシ サービスに対する認証を行いますが、その証明書が TLS インスペクションの間に失われることがあります。
コネクタとバックエンド アプリケーション間のプロキシを使用して構成する
一部の環境では、バックエンド アプリケーションへの通信での転送プロキシの使用は、特別な要件になります。 フォワード プロキシを有効にするには、次の手順に従います。
手順 1:必要なレジストリ値をサーバーに追加する
- デフォルトのプロキシの使用を有効にするには、
HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft Entra private network connector
にあるコネクタ構成レジストリ キーにレジストリ値 (DWORD)UseDefaultProxyForBackendRequests = 1
を追加します。
手順 2:netsh コマンドを使用してプロキシ サーバーを手動で構成する
- グループ ポリシー
Make proxy settings per-machine
を有効にします。 グループ ポリシーはComputer Configuration\Policies\Administrative Templates\Windows Components\Internet Explorer
にあります。 ユーザーごとにポリシーを設定するのではなく、グループ ポリシーを設定する必要があります。 - サーバーで
gpupdate /force
を実行します。 または、グループ ポリシーが更新されたことを確認するには、サーバーを再起動します。 - 管理者権限で管理者特権でのコマンド プロンプトを起動し、
control inetcpl.cpl
を入力します。 - 必要なプロキシ設定を構成します。
この設定によって、コネクタは Azure との通信とバックエンド アプリケーションとの通信に同じ転送プロキシを使用するようになります。 フォワード プロキシを変更するには、ファイル MicrosoftEntraPrivateNetworkConnectorService.exe.config
を変更します。 転送プロキシの構成については、「送信プロキシをバイパスする」および「送信プロキシ サーバーを使用する」のセクションで説明します。
注
オペレーティング システムでは、さまざまな方法でインターネット プロキシを構成できます。 NETSH WINHTTP
によって構成されたプロキシ設定 (確認するには NETSH WINHTTP SHOW PROXY
を実行します) は、手順 2 で構成したプロキシ設定をオーバーライドします。
コネクタ アップデータ サービスはマシン プロキシを使用します。 この設定は MicrosoftEntraPrivateNetworkConnectorUpdaterService.exe.config
ファイルにあります。
コネクタのプロキシの問題とサービスの接続の問題のトラブルシューティング
これですべてのトラフィックがプロキシを経由します。 問題が生じた場合は、次のトラブルシューティング情報が役に立ちます。
コネクタの接続の問題を特定してトラブルシューティングを行う最善の方法は、コネクタ サービスの開始時にネットワーク キャプチャを実行することです。 ネットワーク トレースをキャプチャおよびフィルター処理する際に役立つヒントを簡単に紹介します。
任意の監視ツールを使用することができます。 ここでは、Microsoft Message Analyzer を使用しています。
注
Microsoft Message Analyzer (MMA) は廃止され、2019 年 11 月 25 日に microsoft.com サイトからダウンロード パッケージが削除されました。 現時点では、開発における Microsoft Message Analyzer の Microsoft 代替製品はありません。 同様の機能については、Wireshark などの Microsoft 以外のパートナーのネットワーク プロトコル アナライザー ツールを使用することを検討してください。
以下に示すのは Message Analyzer の例ですが、原則はどの分析ツールでも同じです。
コネクタ トラフィックのキャプチャを実行する
最初のトラブルシューティングでは、次の手順を実行します。
services.msc
から、Microsoft Entra プライベート ネットワーク コネクタ サービスを停止します。Message Analyzer を管理者として実行します。
[Start Local Trace]\(ローカル トレースの開始\) を選択します。
Microsoft Entra プライベート ネットワーク コネクタ サービスを開始します。
ネットワーク キャプチャを停止します。
コネクタのトラフィックが送信プロキシをバイパスするかどうかを確認する
コネクタがアプリケーション プロキシ サービスに直接接続するよう構成している場合、ポート 443 での SynRetransmit
の応答は、ネットワークまたはファイアウォールの問題が発生していることを示しています。
Message Analyzer フィルターを使用して、失敗した伝送制御プロトコル (TCP) 接続試行を識別します。 フィルターのボックスに property.TCPSynRetransmit
と入力し、 [Apply]\(適用\) を選択します。
同期 (SYN) パケットは、TCP 接続を確立するために最初に送信されるパケットです。 このパケットにより応答が返されない場合は、SYN パケットの送信が再試行されます。 フィルターを使用すると、再送信されたすべての SYN パケットが表示されます。 次に、これらの SYN パケットがコネクタ関連のトラフィックに対応するかどうかを調べます。
コネクタのトラフィックが送信プロキシを使用しているかどうかを確認する
プライベート ネットワーク コネクタ トラフィックがプロキシ サーバーを経由するように構成した場合は、プロキシへの失敗した https
接続を探します。
メッセージ アナライザー フィルターを使用して、プロキシへの失敗した HTTPS 接続試行を識別します。 メッセージ アナライザー フィルターに「(https.Request or https.Response) and tcp.port==8080
」と入力し、8080
をご使用のプロキシ サービス ポートに置き換えます。 [Apply]\(適用\) を選択してフィルター結果を確認します。
前述のフィルターにより、プロキシ ポートとの間の HTTPS 要求と応答のみが表示されます。 プロキシ サーバーとの通信を示す CONNECT 要求を調べます。 成功すると、HTTP OK (200) の応答が表示されます。
他の応答コード (407 や 502 など) が表示される場合は、プロキシが認証を必要としているか、何らかの理由でトラフィックを許可しないことを示しています。 その場合は、プロキシ サーバー サポート チームのサポートを得てください。