Microsoft Entra Domain Services 的虛擬網路設計考量和設定選項
Microsoft Entra Domain Services 提供驗證和管理服務給其他應用程式和工作負載。 網路連線是關鍵元件。 若未正確設定虛擬網路資源,應用程式和工作負載就無法與 Domain Services 提供的功能通訊,並使用 Domain Services 提供的功能。 規劃虛擬網路需求,確保 Domain Services 可以視需要為應用程式和工作負載提供服務。
本文概述 Azure 虛擬網路支援 Domain Services 的設計考量和需求。
Azure 虛擬網路設計
若要提供網路連線能力,並允許應用程式和服務針對 Domain Services 受控網域進行驗證,請使用 Azure 虛擬網路和子網路。 在理想情況下,受控網域應該部署到本身的虛擬網路。
您可以在相同的虛擬網路中包含個別的應用程式子網路,藉以裝載您的管理 VM 或輕型應用程式工作負載。 適用於較大型或複雜應用程式工作負載的個別虛擬網路,與 Domain Services 虛擬網路對等互連,通常是最適當的設計。
其他設計選項也是有效的,但前提是您符合虛擬網路和子網路的下列各節中所述的需求。
在為 Domain Services 設計虛擬網路時,您必須考量下列事項:
- Domain Services 必須部署到與虛擬網路相同的 Azure 區域。
- 目前,每個 Microsoft Entra 租用戶只能部署一個受控網域。 受控網域會部署至單一區域。 請確定您在支援 Domain Services 的區域中建立或選取虛擬網路。
- 請考量其他 Azure 區域的鄰近性,以及裝載應用程式工作負載的虛擬網路。
- 若要將延遲降到最低,請將核心應用程式保持在與受控網域的虛擬網路子網路接近或相同的區域中。 您可以使用 Azure 虛擬網路之間的虛擬網路對等互連或虛擬私人網路 (VPN) 連線。 下一節將討論這些連線選項。
- 虛擬網路無法依賴受控網域提供的 DNS 服務以外的 DNS 服務。
- Domain Services 會提供自己的 DNS 服務。 虛擬網路必須設定為使用這些 DNS 服務位址。 您可以使用條件式轉寄站來完成其他命名空間的名稱解析。
- 您無法使用自訂 DNS 伺服器設定來引導來自其他 DNS 伺服器的查詢,包括 VM 上的查詢。 虛擬網路中的資源必須使用受控網域提供的 DNS 服務。
重要
在您啟用網域服務之後,便無法將該服務移到不同的虛擬網路。
受控網域會連線到 Azure 虛擬網路中的子網路。 使用下列考量,為 Domain Services 設計此子網路:
受控網域必須部署在其自己的子網路中。 不支援在虛擬網路對等互連中使用現有的子網路、閘道子網路或遠端閘道設定。
部署受控網域時,會建立網路安全性群組。 此網路安全性群組包含正確的服務通訊所需的規則。
- 請勿使用您本身的自訂規則來建立或使用現有的網路安全性群組。
受控網域需要 3-5 個 IP 位址。 請確定您的子網路 IP 位址範圍可以提供這些位址。
- 限制可用的 IP 位址可防止受控網域維護兩個網域控制站。
注意
因為下列問題,所以您不應該針對虛擬網路和其子網路使用公用 IP 位址:
IP 位址的稀缺性:IPv4 公用 IP 位址有限,而且其需求通常會超過可用的供應。 此外,可能會有與公用端點重疊的 IP。
安全性風險:針對虛擬網路使用公用 IP 會直接向網際網路公開您的裝置,進而增加未經授權存取和潛在攻擊的風險。 如果沒有適當的安全性措施,則您的裝置可能會容易受到各種威脅的攻擊。
複雜度:使用公用 IP 來管理虛擬網路會比使用私人 IP 更為複雜,因為其需要處理外部 IP 範圍,並確保適當的網路分割和安全性。
強烈建議使用私人 IP 位址。 如果您使用公用 IP,則請確定您是所選擇公用範圍內所選擇 IP 的擁有者/專用使用者。
下列範例圖表概述有效的設計,其中受控網域有本身的子網路,也有供外部連線使用的閘道子網路,而且應用程式工作負載位於虛擬網路內已連線的子網路中:
連線至 Domain Services 虛擬網路
如上一節所述,您只能在 Azure 中的單一虛擬網路中建立受控網域,而且每個 Microsoft Entra 租用戶只能建立一個受控網域。 根據此架構,您可能需要將裝載應用程式工作負載的一或多個虛擬網路連線到受控網域的虛擬網路。
您可以使用下列其中一種方法,連接在其他 Azure 虛擬網路中裝載的應用程式工作負載:
- 虛擬網路對等互連
- 虛擬私人網路 (VPN)
虛擬網路對等互連
虛擬網路對等互連是一種機制,可透過 Azure 骨幹網路連接兩個虛擬網路,讓虛擬機(VM)等資源使用私人 IP 位址直接與彼此通訊。 虛擬網路對等互連支援兩個區域對等互連,可連接相同 Azure 區域內的 VNet,以及全域虛擬網路對等互連,以跨不同 Azure 區域連線 VNet。 不論其區域位置為何,此彈性都可讓您在多個虛擬網路上部署具有應用程式工作負載的受控網域。
如需詳細資訊,請參閱 Azure 虛擬網路概觀。
虛擬私人網路 (VPN)
您可以將虛擬網路連線至另一個虛擬網路 (VNet 對 VNet),就像將虛擬網路設定為內部部署網站位置一樣。 這兩種連線都使用 VPN 閘道建立使用 IPsec/IKE 的安全通道。 此連線模型可讓您將受控網域部署到 Azure 虛擬網路,然後連接內部部署位置或其他雲端。
如需使用虛擬私人網路的詳細資訊,請參閱使用 Microsoft Entra 系統管理中心設定 VNet 對 VNet 的 VPN 閘道連線。
連接虛擬網路時的名稱解析
連線到受控網域虛擬網路的虛擬網路通常會有本身的 DNS 設定。 當您連接虛擬網路時,它不會自動設定連接虛擬網路的名稱解析,藉以解析受控網域提供的服務。 連接虛擬網路上的名稱解析必須設定為讓應用程式工作負載找出受控網域。
在支援連接虛擬網路的 DNS 伺服器上使用條件式 DNS 轉寄站,或使用來自受控網域虛擬網路的相同 DNS IP 位址,都可以啟用名稱解析。
Domain Services 所使用的網路資源
受控網域會在部署期間建立一些網路資源。 成功操作和管理受控網域時,需要這些資源,而且不應該手動設定。
請勿鎖定 Domain Services 使用的網路資源。 如果網路資源遭到鎖定,就無法加以刪除。 在此情況下且需要重建網域控制站時,必須建立具有不同 IP 位址的新網路資源。
Azure 資源 | 描述 |
---|---|
網路介面卡 | Domain Services 會將受控網域裝載在兩個網域控制站 (DC) 上,以 Azure VM 的形式在 Windows 伺服器上執行。 每個 VM 都有連線到虛擬網路子網路的虛擬網路介面。 |
動態標準公用 IP 位址 | Domain Services 會使用標準 SKU 公用 IP 位址與同步處理和管理服務通訊。 如需公用 IP 位址的詳細資訊,請參閱 Azure 中的 IP 位址類型和配置方法。 |
Azure Standard Load Balancer | Domain Services 使用標準 SKU 負載平衡器進行網路位址轉譯 (NAT) 和負載平衡 (在搭配安全 LDAP 使用時)。 如需 Azure Load Balancer 的詳細資訊,請參閱什麼是 Azure Load Balancer? |
網路位址轉譯 (NAT) 規則 | Domain Services 會在負載平衡器上建立並使用兩個輸入 NAT 規則來保護 PowerShell 遠端。 如果使用標準 SKU 負載平衡器,它也會有輸出 NAT 規則。 針對基本 SKU 負載平衡器,不需要輸出 NAT 規則。 |
負載平衡器規則 | 當受控網域設定為 TCP 通訊埠 636 上的安全 LDAP 時,會在負載平衡器上建立和使用三個規則來散發流量。 |
警告
請勿刪除或修改 Domain Services 所建立的任何網路資源,例如手動設定負載平衡器或規則。 如果您刪除或修改任何網路資源,可能會導致 Domain Services 服務中斷。
網路安全性群組與必要連接埠
網路安全性群組 (NSG) 包含規則清單,可允許或拒絕 Azure 虛擬網路中的網路流量。 在部署受控網域時,會使用一組規則來建立網路安全性群組,讓服務提供驗證和管理功能。 此預設網路安全性群組會與受控網域部署所在的虛擬網路子網路相關聯。
下列各節涵蓋網路安全性群組和輸入和輸出連接埠需求。
輸入連線
受控網域需要下列網路安全性群組輸入規則,才能提供驗證和管理服務。 對於您受控網域的虛擬網路子網路,請勿編輯或刪除這些網路安全性群組規則。
來源 | 來源服務標籤 | 來源連接埠範圍 | 目的地 | 服務 | 目的地連接埠範圍 | 通訊協定 | 動作 | 必要 | 目的 |
---|---|---|---|---|---|---|---|---|---|
服務標籤 | AzureActiveDirectoryDomainServices | * | 任意 | WinRM | 5986 | TCP | 允許 | Yes | 管理您的網域。 |
服務標記 | CorpNetSaw | * | 任意 | RDP | 3389 | TCP | 允許 | 選擇性 | 支援偵錯 |
請注意,無法使用 Microsoft Entra 系統管理中心來使用 CorpNetSaw 服務標籤,且必須使用 PowerShell 來新增 CorpNetSaw 的網路安全性群組規則。
Domain Services 也依賴預設安全性規則 AllowVnetInBound 和 AllowAzureLoadBalancerInBound。
AllowVnetInBound 規則允許 VNet 內的所有流量,這允許 DC 正確進行通訊和複寫,也允許網域成員的網域加入和其他網域服務。 如需 Windows 所需連接埠的詳細資訊,請參閱 Windows 的服務概觀和網路連接埠需求。
同時也需要 AllowAzureLoadBalancerInBound 規則,讓服務可以透過負載平衡器正確通訊並管理 DC。 此網路安全性群組會保護 Domain Services,而且能讓受控網域正確運作。 請勿刪除此網路安全性群組。 如果沒有此群組,負載平衡器將無法正常運作。
如有需要,您可以使用 Azure PowerShell 建立必要的網路安全性群組和規則。
警告
您將設定錯誤的網路安全性群組或使用者定義的路由表與部署受控網域的子網路產生關聯時,可能會中斷 Microsoft 的服務和管理網域的能力。 此外,Microsoft Entra 租用戶與受控網域之間的同步處理已中斷。 請遵循所有列出的需求,藉以避免不支援而可能會中斷同步、修補或管理的設定。
如果您使用安全 LDAP,您可以新增必要的 TCP 通訊埠 636 規則,藉以視需要允許外部流量。 新增此規則並不會將您的網路安全性群組規則置於不支援的狀態。 如需詳細資訊,請參閱鎖定透過網際網路進行的安全 LDAP 存取
Azure SLA 不適用於封鎖未正確設定網路安全性群組或使用者定義的路由表進行更新或管理的部署。 中斷的網路設定也可以防止套用安全性修補程式。
輸出連線
針對輸出連線,您可以保留 AllowVnetOutbound 和 AllowInternetOutBound,也可以使用下表所列的 ServiceTag 限制輸出流量。 必須透過 PowerShell 新增 AzureUpdateDelivery 的 ServiceTag。 如果您使用 Log Analytics,請將 EventHub 新增至輸出目的地。
請確定沒有其他優先順序較高的 NSG 拒絕輸出連線。 如果輸出連線遭到拒絕,複寫將無法在複本集之間運作。
輸出連接埠號碼 | 通訊協定 | 來源 | Destination | 動作 | 必要 | 目的 |
---|---|---|---|---|---|---|
443 | TCP | 任意 | AzureActiveDirectoryDomainServices | 允許 | Yes | 與 Microsoft Entra Domain Services 管理服務的通訊。 |
443 | TCP | 任意 | AzureMonitor | Allow | Yes | 監視虛擬機器。 |
443 | TCP | 任意 | 儲存體 | Allow | Yes | 與 Azure 進行通訊。 |
443 | TCP | 任意 | Microsoft Entra ID | 允許 | Yes | 與 Microsoft Entra ID 的通訊。 |
443 | TCP | 任意 | GuestAndHybridManagement | 允許 | Yes | 安全性修補程式的自動化管理。 |
注意
自 2024 年 7 月 1 日起,AzureUpdateDelivery 和 AzureFrontDoor.FirstParty 標籤將被取代。 如果使用預設的 AllowInternetOutBound 規則 (優先順序為 65001),則不需要進行任何變更 (具有或沒有 AzureUpdateDelivery 和 AzureFrontDoor.FirstParty 標籤)。 如需詳細資訊,請參閱<AzureUpdateDelivery 服務標籤的變更>。
連接埠 5986 – 使用 PowerShell 遠端系統進行管理
- 用來在受控網域上使用 PowerShell 遠端執行管理工作。
- 若無法存取此連接埠,將無法更新、設定、備份或監視您的受控網域。
- 您可以將此連接埠的輸入存取限制為 AzureActiveDirectoryDomainServices 服務標籤。
連接埠 3389 – 使用遠端桌面進行管理
- 用於對受控網域中域控制器的遠端桌面連線,此埠無法變更或封裝到另一個埠。
- 預設網路安全性群組規則會使用 CorpNetSaw 服務標籤進一步限制流量。
- 此服務標記只允許 Microsoft 公司網路上的安全存取工作站對於受控網域使用遠端桌面。
- 只有對於業務理由才允許存取,例如管理或疑難排解案例。
- 此規則可以設定為 [拒絕],而且只在必要時才設定為 [允許]。 大部分的管理與監視工作都是使用 PowerShell 遠端執行的。 只有在罕見的情況下,Microsoft 需要從遠端連線到您的受控網域進行進階疑難排解時,才會使用 RDP。
如果您嘗試編輯此網路安全性群組規則,就無法從入口網站手動選取 CorpNetSaw 服務標籤。 您必須使用 Azure PowerShell 或 Azure CLI 手動設定使用 CorpNetSaw 服務標籤的規則。
例如,您可以使用下列指令碼建立允許 RDP 的規則:
Get-AzNetworkSecurityGroup -Name "nsg-name" -ResourceGroupName "resource-group-name" | Add-AzNetworkSecurityRuleConfig -Name "new-rule-name" -Access "Allow" -Protocol "TCP" -Direction "Inbound" -Priority "priority-number" -SourceAddressPrefix "CorpNetSaw" -SourcePortRange "*" -DestinationPortRange "3389" -DestinationAddressPrefix "*" | Set-AzNetworkSecurityGroup
使用者定義的路由
預設不會建立使用者定義的路由,而且 Domain Services 不需要使用者定義的路由即可正常運作。 如果您需要使用路由表,請避免對 0.0.0.0 路由進行任何變更。 此路由的變更會中斷 Domain Services,並將受控網域置於不支援的狀態。
您也必須將來自個別 Azure 服務標籤內含 IP 位址的輸入流量路由傳送至受控網域的子網路。 如需服務標籤及其相關聯 IP 位址的詳細資訊,請參閱 Azure IP 範圍和服務標籤 - 公用雲端。
警告
這些 Azure 資料中心 IP 範圍可能會變更,恕不另行通知。 請確定您有流程可驗證您有最新的 IP 位址。
下一步
如需 Domain Services 使用的一些網路資源和連線選項有關的詳細資訊,請參閱下列文章: