高可用性同盟驗證階段 3:設定 AD FS 伺服器

 

適用版本:Microsoft Azure, Office 365 Enterprise

上次修改主題的時間:2017-05-04

摘要:在 Microsoft Azure 中,建立並設定 Office 365 高可用性同盟驗證的 Active Directory 同盟服務 (AD FS) 伺服器。

在 Azure 基礎結構服務中部署 Office 365 同盟驗證高可用性的此階段,您會建立內部負載平衡器和兩部 AD FS 伺服器。

您必須先完成此階段,才可繼續 高可用性同盟驗證階段 4:設定 Web 應用程式 Proxy。請參閱<部署在 Azure 中的 Office 365 的高可用性同盟的驗證>以了解所有階段。

您可以使用下列 PowerShell 命令的區塊,建立兩個 AD FS 伺服器的虛擬機器。此 PowerShell 命令集會使用下表中的值︰

  • 表格 M,適用於虛擬機器

  • 表格 R,適用於資源群組

  • 表格 V,適用於虛擬網路設定

  • 表格 S,適用於子網路

  • 表格 I,適用於靜態 IP 位址

  • 表格 ST,適用於儲存體帳戶

  • 表格 A,適用於可用性設定組

請記得您在 高可用性同盟驗證階段 2:設定網域控制站 中定義的表格 M,和 高可用性同盟驗證階段 1:設定 Azure 中定義的表格 R、V、S、I、ST 和 A。

注意事項附註:
下列命令集會使用 Azure PowerShell 1.0 和更新版本。

首先,您會為兩個 AD FS 伺服器建立 Azure 內部負載平衡器。指定變數的值,移除 < 和 > 字元。當您已提供所有適當的值時,在 Azure PowerShell 命令提示字元上或 PowerShell ISE 中執行結果區塊。

提示提示:
如需包含本文中所有 PowerShell 命令的文字檔,和根據您自訂設定產生可執行 PowerShell 命令區塊的 Microsoft Excel 組態活頁簿,請參閱<Azure 部署中的 Office 365 同盟驗證套件
# Set up key variables
$locName="<your Azure location>"
$vnetName="<Table V - Item 1 - Value column>"
$subnetName="<Table R - Item 2 - Subnet name column>"
$privIP="<Table I - Item 4 - Value column>"
$rgName=<Table R - Item 4 - Resource group name column>"

$vnet=Get-AzureRMVirtualNetwork -Name $vnetName -ResourceGroupName $rgName
$subnet=Get-AzureRmVirtualNetworkSubnetConfig -VirtualNetwork $vnet -Name $subnetName

$frontendIP=New-AzureRMLoadBalancerFrontendIpConfig -Name "ADFSServers-LBFE" -PrivateIPAddress $privIP -Subnet $subnet
$beAddressPool=New-AzureRMLoadBalancerBackendAddressPoolConfig -Name "ADFSServers-LBBE"

$healthProbe=New-AzureRMLoadBalancerProbeConfig -Name WebServersProbe -Protocol "TCP" -Port 443 -IntervalInSeconds 15 -ProbeCount 2
$lbrule=New-AzureRMLoadBalancerRuleConfig -Name "HTTPSTraffic" -FrontendIpConfiguration $frontendIP -BackendAddressPool $beAddressPool -Probe $healthProbe -Protocol "TCP" -FrontendPort 443 -BackendPort 443
New-AzureRMLoadBalancer -ResourceGroupName $rgName -Name "ADFSServers" -Location $locName -LoadBalancingRule $lbrule -BackendAddressPool $beAddressPool -Probe $healthProbe -FrontendIpConfiguration $frontendIP

下一步,建立 AD FS 伺服器虛擬機器。

當您已提供所有適當的值時,在 Azure PowerShell 命令提示字元上或 PowerShell ISE 中執行結果區塊。

# Set up variables common to both virtual machines
$locName="<your Azure location>"
$vnetName="<Table V - Item 1 - Value column>"
$subnetName="<Table R - Item 2 - Subnet name column>"
$avName="<Table A - Item 2 - Availability set name column>"
$rgNameTier="<Table R - Item 2 - Resource group name column>"
$rgNameInfra="<Table R - Item 4 - Resource group name column>"

$rgName=$rgNameInfra
$vnet=Get-AzureRMVirtualNetwork -Name $vnetName -ResourceGroupName $rgName
$subnet=Get-AzureRmVirtualNetworkSubnetConfig -VirtualNetwork $vnet -Name $subnetName
$backendSubnet=Get-AzureRMVirtualNetworkSubnetConfig -Name $subnetName -VirtualNetwork $vnet
$webLB=Get-AzureRMLoadBalancer -ResourceGroupName $rgName -Name "ADFSServers"

$rgName=$rgNameTier
$avSet=Get-AzureRMAvailabilitySet -Name $avName -ResourceGroupName $rgName

# Create the first ADFS server virtual machine
$vmName="<Table M - Item 4 - Virtual machine name column>"
$vmSize="<Table M - Item 4 - Minimum size column>"
$staticIP="<Table I - Item 5 - Value column>"
$saName="<Table ST - Item 4 - Storage account name column>"

$nic=New-AzureRMNetworkInterface -Name ($vmName +"-NIC") -ResourceGroupName $rgName -Location $locName -Subnet $backendSubnet -LoadBalancerBackendAddressPool $webLB.BackendAddressPools[0] -PrivateIpAddress $staticIP
$vm=New-AzureRMVMConfig -VMName $vmName -VMSize $vmSize -AvailabilitySetId $avset.Id

$cred=Get-Credential -Message "Type the name and password of the local administrator account for the first AD FS server." 
$vm=Set-AzureRMVMOperatingSystem -VM $vm -Windows -ComputerName $vmName -Credential $cred -ProvisionVMAgent -EnableAutoUpdate
$vm=Set-AzureRMVMSourceImage -VM $vm -PublisherName MicrosoftWindowsServer -Offer WindowsServer -Skus 2016-Datacenter -Version "latest"
$vm=Add-AzureRMVMNetworkInterface -VM $vm -Id $nic.Id
$osDiskUri=$storageAcc.PrimaryEndpoints.Blob.ToString() + "vhds/" + $vmName + "-OSDisk.vhd"
$vm=Set-AzureRMVMOSDisk -VM $vm -Name "OSDisk" -VhdUri $osDiskUri -CreateOption fromImage
New-AzureRMVM -ResourceGroupName $rgName -Location $locName -VM $vm

# Create the second AD FS virtual machine
$vmName="<Table M - Item 5 - Virtual machine name column>"
$vmSize="<Table M - Item 5 - Minimum size column>"
$staticIP="<Table I - Item 6 - Value column>"
$saName="<Table ST - Item 5 - Storage account name column>"

$nic=New-AzureRMNetworkInterface -Name ($vmName +"-NIC") -ResourceGroupName $rgName -Location $locName  -Subnet $backendSubnet -LoadBalancerBackendAddressPool $webLB.BackendAddressPools[0] -PrivateIpAddress $staticIP
$vm=New-AzureRMVMConfig -VMName $vmName -VMSize $vmSize -AvailabilitySetId $avset.Id

$cred=Get-Credential -Message "Type the name and password of the local administrator account for the second AD FS server." 
$vm=Set-AzureRMVMOperatingSystem -VM $vm -Windows -ComputerName $vmName -Credential $cred -ProvisionVMAgent -EnableAutoUpdate
$vm=Set-AzureRMVMSourceImage -VM $vm -PublisherName MicrosoftWindowsServer -Offer WindowsServer -Skus 2016-Datacenter -Version "latest"
$vm=Add-AzureRMVMNetworkInterface -VM $vm -Id $nic.Id
$osDiskUri=$storageAcc.PrimaryEndpoints.Blob.ToString() + "vhds/" + $vmName + "-OSDisk.vhd"
$vm=Set-AzureRMVMOSDisk -VM $vm -Name "OSDisk" -VhdUri $osDiskUri -CreateOption fromImage
New-AzureRMVM -ResourceGroupName $rgName -Location $locName -VM $vm

注意事項附註:
由於這些虛擬機器是用於內部網路應用程式,並不會指派公用 IP 位址或 DNS 網域名稱標籤,也不會曝露在網際網路上。不過,這也表示您無法透過 Azure 入口網站與虛擬機器連線。當您檢視虛擬機器的屬性時,無法使用連線選項。請使用遠端桌面連線附屬應用程式或另一個遠端桌面工具,透過使用其私人 IP 位址或內部網路 DNS 名稱來與虛擬機器連線。

針對每一部虛擬機器,使用您所選的遠端桌面用戶端建立遠端桌面連線。請使用其內部網路 DNS 或本機管理員帳戶的電腦名稱和認證。

針對每一部虛擬機器,在 Windows PowerShell 提示上使用以下命令將其加入適當的 Windows Server AD 網域。

$domName="<Windows Server AD domain name to join, such as corp.contoso.com>"
$cred=Get-Credential -Message "Type the name and password of a domain acccount."
Add-Computer -DomainName $domName -Credential $cred
Restart-Computer

以下是成功完成此階段的設定結果 (包含電腦名稱的預留位置)。

階段 3:Azure 中高可用性同盟驗證基礎結構的 AD FS 伺服器和內部負載平衡器

具有 AD FS 伺服器的 Azure 中之高可用性 Office 365 同盟驗證基礎結構的階段 3

顯示: