使用現有的內部部署 Proxy 伺服器
設定 Microsoft Entra 私人網路連接器以使用連出 Proxy 伺服器。 本文假設網路環境已經有 Proxy 伺服器。
我們先來看看這些主要部署案例︰
- 設定連接器以略過您的內部部署輸出 Proxy。
- 設定要使用輸出 Proxy 來存取 Microsoft Entra 應用程式 Proxy 的連接器。
- 使用連接器和後端應用程式之間的 Proxy 進行設定。
如需連接器如何運作的詳細資訊,請參閱了解 Microsoft Entra 私人網路連接器。
略過輸出 Proxy
連接器有會發出輸出要求的基礎作業系統元件。 這些元件會使用 Web Proxy 自動探索 (WPAD),自動嘗試在網路上找出 Proxy 伺服器。
OS 元件會嘗試藉由對 wpad.domainsuffix
執行網域名稱系統 (DNS) 查閱來尋找 Proxy 伺服器。 如果查閱以 DNS 進行解晰,則會對 wpad.dat
的網際網路通訊協定 (IP) 位址提出 HTTP 要求。 此要求會成為您環境中的 Proxy 組態指令碼。 連接器會使用這個指令碼來選取輸出 Proxy 伺服器。 但是,連接器流量可能會繼續失敗,因為 Proxy 上需要更多的組態設定。
您可以將連接器設定為略過內部部署 Proxy,以確保其對 Microsoft Entra 應用程式 Proxy 服務使用直接連線。 建議直接連線,因為其需要較少的組態。 但是,某些網路原則要求流量通過本機 Proxy 伺服器。
若要停用連接器的連出 Proxy 使用方式,請編輯 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>
若要確保連接器更新程式服務也略過 Proxy,請對 MicrosoftEntraPrivateNetworkConnectorUpdaterService.exe.config
檔案進行類似的變更。 檔案位於 C:\Program Files\Microsoft Entra private network connector Updater
。
請務必複製原始檔案,以免您需要還原為預設 .config
檔案。
使用輸出 Proxy 伺服器
某些環境會要求所有輸出流量通過輸出 Proxy,無一例外。 如此一來,略過 Proxy 不是選項。
您可以設定連接器流量通過輸出 Proxy,如下圖所示:
由於僅有輸出流量,因此您不需要設定透過防火牆來進行的輸入存取。
注意
應用程式 Proxy 不支援其他 Proxy 的驗證。 連接器/更新程式網路服務帳戶應該能夠連線到 Proxy,而不需進行驗證。
步驟 1:設定連接器和相關服務以通過輸出 Proxy
若 WPAD 在環境中啟用並正確地設定,連接器會自動探索輸出 Proxy 伺服器,並嘗試使用它。 不過,您可以明確地設定連接器以通過輸出 Proxy。
若要這樣做,請編輯 C:\Program Files\Microsoft Entra private network connector\MicrosoftEntraPrivateNetworkConnectorService.exe.config
檔案,並新增範例程式碼中顯示的 system.net
區段。 變更 proxyserver:8080
以反映本機 Proxy 伺服器名稱或 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
檔案進行類似的變更來設定連接器更新程式服務以使用 Proxy。
注意
如果 MicrosoftEntraPrivateNetworkConnectorService.exe.config 中未設定 defaultProxy (預設),連接器服務會評估 defaultProxy 組態以供在 %SystemRoot%\Microsoft.NET\Framework64\v4.0.30319\Config\machine.config
中使用。這也適用於連接器更新程式服務 (MicrosoftEntraPrivateNetworkConnectorUpdaterService.exe.config)。
步驟 2︰設定 Proxy 以允許來自連接器與相關服務的流量通過
在輸出 Proxy 有 4 個層面需要考量:
- Proxy 輸出規則
- Proxy 驗證
- Proxy 連接埠
- 傳輸層安全性 (TLS) 檢查
Proxy 輸出規則
允許存取下列 URL:
URL | 連接埠 | 使用 |
---|---|---|
*.msappproxy.net *.servicebus.windows.net |
443/HTTPS | 連接器與應用程式 Proxy 雲端服務之間的通訊 |
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。 |
如果您的防火牆或 Proxy 允許您設定 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
。 請務必選取相關的雲端。 例如,您可以搜尋Azure IP Ranges and Service Tags – Public Cloud
來找到公用雲端 IP 範圍。 您可以搜尋Azure IP Ranges and Service Tags – US Government Cloud
來找到美國政府雲端。
Proxy 驗證
目前不支援 Proxy 驗證。 目前的建議是允許連接器匿名存取網際網路目的地。
Proxy 連接埠
連接器可使用 CONNECT 方法進行輸出 TLS 型連線。 此方法基本上會透過輸出 Proxy 設定通道。 設定 Proxy 伺服器以允許連接埠 443 和 80 通道。
注意
當服務匯流排在 HTTPS 上執行時,它會使用連接埠 443。 不過,根據預設,服務匯流排會嘗試導向傳輸控制通訊協定 (TCP) 連線,且僅在直接連線失敗時,才會改為使用 HTTPS。
TLS 檢查
請勿對連接器流量使用 TLS 檢查,因為這樣會導致連接器流量發生問題。 連接器會使用憑證來向應用程式 Proxy 服務進行驗證,該憑證可能會在 TLS 檢查期間遺失。
使用連接器和後端應用程式之間的 Proxy 進行設定
針對與後端應用程式的通訊使用正向 Proxy,是某些環境中的特殊需求。 若要啟用正向 Proxy,請遵循這些步驟:
步驟 1:將所需登錄值新增至伺服器
- 若要啟用使用預設 Proxy,請將登錄值 (DWORD)
UseDefaultProxyForBackendRequests = 1
新增至位於HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft Entra private network connector
的連接器組態登錄機碼。
步驟 2:使用 netsh 命令手動設定 Proxy 伺服器
- 啟用群組原則
Make proxy settings per-machine
。 群組原則位於:Computer Configuration\Policies\Administrative Templates\Windows Components\Internet Explorer
。 需要設定群組原則,而不是為每個使用者設定原則。 - 在伺服器上執行
gpupdate /force
。 或者,若要確保群組原則已更新,請將伺服器重新開機。 - 以系統管理員權限啟動提升權限的命令提示字元,然後輸入
control inetcpl.cpl
。 - 設定必要的 Proxy 設定。
設定會讓連接器使用相同的正向 Proxy 來與 Azure 和後端應用程式進行通訊。 修改檔案 MicrosoftEntraPrivateNetworkConnectorService.exe.config
以變更正向 Proxy。 略過連出 Proxy 和使用連出 Proxy 伺服器區段描述了正向 Proxy 組態。
注意
在作業系統中設定網際網路 proxy 的方式有很多種。 透過 NETSH WINHTTP
設定的 Proxy 設定 (執行 NETSH WINHTTP SHOW PROXY
以確認) 會覆寫您在步驟 2 中設定的 Proxy 設定。
連接器更新程式服務使用機器 Proxy。 設定位於 MicrosoftEntraPrivateNetworkConnectorUpdaterService.exe.config
檔案中。
針對連接器 Proxy 問題和服務連線問題進行疑難排解
現在您應該會看到所有的流量通過 Proxy。 如果您有問題,下列疑難排解資訊應該會有幫助。
找出連接器連線問題並進行疑難排解的最佳方式,是在啟動連接器服務時進行網路擷取。 以下是擷取和篩選網路追蹤的一些快速秘訣。
您可以使用您選擇的監視工具。 基於本文的目的,我們使用 Microsoft Message Analyzer。
注意
Microsoft Message Analyzer (MMA) 已淘汰,並已在 2019 年 11 月 25 日從 microsoft.com 網站移除其下載套件。 目前開發中的 Microsoft Message Analyzer 還沒有 Microsoft 取代。 如需類似的功能,請考慮使用協力廠商網路通訊協定分析工具,例如 Wireshark。
下列範例針對的是 Message Analyzer,但是這些原則可以套用到任何分析工具。
擷取連接器流量
如需初始的疑難排解,執行下列步驟︰
從
services.msc
開始,停止 Microsoft Entra 私人網路連接器服務。以系統管理員身分執行 Message Analyzer。
選取 [啟動本機追蹤]。
啟動 Microsoft Entra 私人網路連接器服務。
停止網路擷取。
檢查連接器流量是否略過輸出 Proxy
如果您希望該連接器直接連線至應用程式 Proxy 服務,則連接埠 443 的 SynRetransmit
回應表示您有網路或防火牆問題。
使用 Message Analyzer 篩選器來識別失敗的傳輸控制通訊協定 (TCP) 連線嘗試。 在篩選方塊中輸入 property.TCPSynRetransmit
,並選取 [套用]。
同步處理 (SYN) 封包是傳送到建立 TCP 連線的第一個封包。 如果此封包未傳回回應,則會重新嘗試 SYN。 您可以使用篩選器查看任何重新傳輸的 SYN 封包。 然後,您可以檢查這些 SYN 封包是否對應至任何與連接器相關的流量。
檢查連接器流量是否使用輸出 Proxy
如果您將私人網路連接器流量設定為透過 Proxy 伺服器,請尋找您 Proxy 的失敗 https
連線。
使用 Message Analyzer 篩選器來識別您 Proxy 的失敗 HTTPS 連線嘗試。 在 Message Analyzer 篩選器中輸入 (https.Request or https.Response) and tcp.port==8080
,將 8080
取代為您的 Proxy 服務連接埠。 選取 [套用] 查看篩選結果。
上述篩選條件只會顯示 HTTPs 要求和往返 Proxy 連接埠的回應。 您正在尋找顯示與 Proxy 伺服器通訊的 CONNECT 要求。 成功時,您會收到 HTTP OK (200) 回應。
如果您看到其他回應碼,例如 407 或 502,這表示 Proxy 需要驗證或由於某些其他原因不允許流量。 此時您會與您的 Proxy 伺服器支援團隊合作。