Этап 2. Федеративная проверка подлинности для обеспечения высокой доступности: настройка контроллеров доменаHigh availability federated authentication Phase 2: Configure domain controllers

На этом этапе развертывания высокой доступности для федерарной проверки подлинности Microsoft 365 в службах инфраструктуры Azure настраиваются два контроллера домена и сервер синхронизации каталогов в виртуальной сети Azure.In this phase of deploying high availability for Microsoft 365 federated authentication in Azure infrastructure services, you configure two domain controllers and the directory synchronization server in the Azure virtual network. После этого проверку подлинности клиентов можно выполнять в виртуальной сети Azure, не отправляя трафик проверки подлинности через подключение VPN типа "сеть-сеть" к локальной сети.Client web requests for authentication can then be authenticated in the Azure virtual network, rather than sending that authentication traffic across the site-to-site VPN connection to your on-premises network.

Примечание

Службы Федерации Active Directory (AD FS) не могут использовать Azure Active Directory (Azure AD) в качестве замены контроллеров доменных служб Active Directory (AD DS).Active Directory Federation Services (AD FS) cannot use Azure Active Directory (Azure AD) as a substitute for Active Directory Domain Services (AD DS) domain controllers.

Перед переходом на этап 3: Настройка серверов AD FSнеобходимо завершить этот этап.You must complete this phase before moving on to Phase 3: Configure AD FS servers. Развертывание федерарной проверки подлинности с высокой доступностью для Microsoft 365 в Azure для всех этапов.See Deploy high availability federated authentication for Microsoft 365 in Azure for all of the phases.

Создание виртуальных машин контроллеров домена в AzureCreate the domain controller virtual machines in Azure

Для начала необходимо заполнить столбец Имя виртуальной машины в таблице M и при необходимости изменить размеры виртуальных машин в столбце Минимальный размер.First, you need to fill out the Virtual machine name column of Table M and modify virtual machine sizes as needed in the Minimum size column.

ЭлементItem Имя виртуальной машиныVirtual machine name Образ коллекцииGallery image Тип хранилищаStorage type Минимальный размерMinimum size
1.1.
линия (первый контроллер домена, например DC1)(first domain controller, example DC1)
Windows Server 2016 DatacenterWindows Server 2016 Datacenter
Standard_LRSStandard_LRS
Standard_D2Standard_D2
2.2.
линия (второй контроллер домена, например DC2)(second domain controller, example DC2)
Windows Server 2016 DatacenterWindows Server 2016 Datacenter
Standard_LRSStandard_LRS
Standard_D2Standard_D2
3.3.
линия (сервер синхронизации каталогов, пример DS1)(directory synchronization server, example DS1)
Windows Server 2016 DatacenterWindows Server 2016 Datacenter
Standard_LRSStandard_LRS
Standard_D2Standard_D2
4.4.
линия (первый сервер AD FS, например ADFS1)(first AD FS server, example ADFS1)
Windows Server 2016 DatacenterWindows Server 2016 Datacenter
Standard_LRSStandard_LRS
Standard_D2Standard_D2
5.5.
линия (второй сервер AD FS, например ADFS2)(second AD FS server, example ADFS2)
Windows Server 2016 DatacenterWindows Server 2016 Datacenter
Standard_LRSStandard_LRS
Standard_D2Standard_D2
6.6.
линия (первый прокси-сервер веб-приложения, пример WEB1)(first web application proxy server, example WEB1)
Windows Server 2016 DatacenterWindows Server 2016 Datacenter
Standard_LRSStandard_LRS
Standard_D2Standard_D2
7.7.
линия (второй прокси-сервер веб-приложения, например WEB2)(second web application proxy server, example WEB2)
Windows Server 2016 DatacenterWindows Server 2016 Datacenter
Standard_LRSStandard_LRS
Standard_D2Standard_D2

Таблица M . Виртуальные машины для федерарной проверки подлинности высокой доступности для Microsoft 365 в AzureTable M - Virtual machines for the high availability federated authentication for Microsoft 365 in Azure

Полный список размеров виртуальных машин представлен в этой статье.For the complete list of virtual machine sizes, see Sizes for virtual machines.

Приведенный ниже блок команд Azure PowerShell создает виртуальные машины для двух контроллеров домена.The following Azure PowerShell command block creates the virtual machines for the two domain controllers. Укажите значения для переменных, удалив < and > символы.Specify the values for the variables, removing the < and > characters. Обратите внимание, что в этом блоке команд Azure PowerShell используются значения из следующих таблиц:Note that this Azure PowerShell command block uses values from the following tables:

  • таблица M (для виртуальных машин);Table M, for your virtual machines

  • таблица R (для групп ресурсов);Table R, for your resource groups

  • таблица V (для параметров виртуальной сети);Table V, for your virtual network settings

  • таблица S (для подсетей);Table S, for your subnets

  • таблица I (для статических IP-адресов);Table I, for your static IP addresses

  • таблица A (для групп доступности).Table A, for your availability sets

Напомним, что вы определили таблицы R, V, S, I и A в фазе 1: Настройка Azure.Recall that you defined Tables R, V, S, I, and A in Phase 1: Configure Azure.

Примечание

Для указанных ниже последовательностей команд используется последняя версия Azure PowerShell.The following command sets use the latest version of Azure PowerShell. См. начало работы с Azure PowerShell.See Get started with Azure PowerShell.

Указав правильные значения, выполните полученный блок в командной строке Azure PowerShell или в интегрированной среде сценариев PowerShell (ISE) на локальном компьютере.When you have supplied all the correct values, run the resulting block at the Azure PowerShell prompt or in the PowerShell Integrated Script Environment (ISE) on your local computer.

Совет

Для создания готовых к запуску командных блоков PowerShell на основе настраиваемой настройки используйте эту книгу конфигурации Microsoft Excel.To generate ready-to-run PowerShell command blocks based on your custom settings, use this Microsoft Excel configuration workbook.

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

$rgName=$rgNameInfra
$vnet=Get-AzVirtualNetwork -Name $vnetName -ResourceGroupName $rgName
$subnet=Get-AzVirtualNetworkSubnetConfig -VirtualNetwork $vnet -Name $subnetName

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

# Create the first domain controller
$vmName="<Table M - Item 1 - Virtual machine name column>"
$vmSize="<Table M - Item 1 - Minimum size column>"
$staticIP="<Table I - Item 1 - Value column>"
$diskStorageType="<Table M - Item 1 - Storage type column>"
$diskSize=<size of the extra disk for Active Directory Domain Services (AD DS) data in GB>

$nic=New-AzNetworkInterface -Name ($vmName +"-NIC") -ResourceGroupName $rgName -Location $locName -Subnet $subnet -PrivateIpAddress $staticIP
$vm=New-AzVMConfig -VMName $vmName -VMSize $vmSize -AvailabilitySetId $avset.Id
$vm=Set-AzVMOSDisk -VM $vm -Name ($vmName +"-OS") -DiskSizeInGB 128 -CreateOption FromImage -StorageAccountType $diskStorageType
$diskConfig=New-AzDiskConfig -AccountType $diskStorageType -Location $locName -CreateOption Empty -DiskSizeGB $diskSize
$dataDisk1=New-AzDisk -DiskName ($vmName + "-DataDisk1") -Disk $diskConfig -ResourceGroupName $rgName
$vm=Add-AzVMDataDisk -VM $vm -Name ($vmName + "-DataDisk1") -CreateOption Attach -ManagedDiskId $dataDisk1.Id -Lun 1
$cred=Get-Credential -Message "Type the name and password of the local administrator account for the first domain controller." 
$vm=Set-AzVMOperatingSystem -VM $vm -Windows -ComputerName $vmName -Credential $cred -ProvisionVMAgent -EnableAutoUpdate
$vm=Set-AzVMSourceImage -VM $vm -PublisherName MicrosoftWindowsServer -Offer WindowsServer -Skus 2016-Datacenter -Version "latest"
$vm=Add-AzVMNetworkInterface -VM $vm -Id $nic.Id
New-AzVM -ResourceGroupName $rgName -Location $locName -VM $vm

# Create the second domain controller
$vmName="<Table M - Item 2 - Virtual machine name column>"
$vmSize="<Table M - Item 2 - Minimum size column>"
$staticIP="<Table I - Item 2 - Value column>"
$diskStorageType="<Table M - Item 2 - Storage type column>"
$diskSize=<size of the extra disk for AD DS data in GB>

$nic=New-AzNetworkInterface -Name ($vmName +"-NIC") -ResourceGroupName $rgName -Location $locName -Subnet $subnet -PrivateIpAddress $staticIP
$vm=New-AzVMConfig -VMName $vmName -VMSize $vmSize -AvailabilitySetId $avset.Id
$vm=Set-AzVMOSDisk -VM $vm -Name ($vmName +"-OS") -DiskSizeInGB 128 -CreateOption FromImage -StorageAccountType $diskStorageType
$diskConfig=New-AzDiskConfig -AccountType $diskStorageType -Location $locName -CreateOption Empty -DiskSizeGB $diskSize
$dataDisk1=New-AzDisk -DiskName ($vmName + "-DataDisk1") -Disk $diskConfig -ResourceGroupName $rgName
$vm=Add-AzVMDataDisk -VM $vm -Name ($vmName + "-DataDisk1") -CreateOption Attach -ManagedDiskId $dataDisk1.Id -Lun 1
$cred=Get-Credential -Message "Type the name and password of the local administrator account for the second domain controller." 
$vm=Set-AzVMOperatingSystem -VM $vm -Windows -ComputerName $vmName -Credential $cred -ProvisionVMAgent -EnableAutoUpdate
$vm=Set-AzVMSourceImage -VM $vm -PublisherName MicrosoftWindowsServer -Offer WindowsServer -Skus 2016-Datacenter -Version "latest"
$vm=Add-AzVMNetworkInterface -VM $vm -Id $nic.Id
New-AzVM -ResourceGroupName $rgName -Location $locName -VM $vm

# Create the directory synchronization server
$vmName="<Table M - Item 3 - Virtual machine name column>"
$vmSize="<Table M - Item 3 - Minimum size column>"
$staticIP="<Table I - Item 3 - Value column>"
$diskStorageType="<Table M - Item 3 - Storage type column>"

$nic=New-AzNetworkInterface -Name ($vmName +"-NIC") -ResourceGroupName $rgName -Location $locName -Subnet $subnet -PrivateIpAddress $staticIP
$vm=New-AzVMConfig -VMName $vmName -VMSize $vmSize

$cred=Get-Credential -Message "Type the name and password of the local administrator account for the directory synchronization server." 
$vm=Set-AzVMOperatingSystem -VM $vm -Windows -ComputerName $vmName -Credential $cred -ProvisionVMAgent -EnableAutoUpdate
$vm=Set-AzVMSourceImage -VM $vm -PublisherName MicrosoftWindowsServer -Offer WindowsServer -Skus 2016-Datacenter -Version "latest"
$vm=Add-AzVMNetworkInterface -VM $vm -Id $nic.Id
$vm=Set-AzVMOSDisk -VM $vm -Name ($vmName +"-OS") -DiskSizeInGB 128 -CreateOption FromImage -StorageAccountType $diskStorageType
New-AzVM -ResourceGroupName $rgName -Location $locName -VM $vm

Примечание

Эти виртуальные машины предназначены для работы в интрасети, поэтому им не назначается общедоступный IP-адрес или метка доменного имени DNS и они не подключаются к Интернету. Однако это также означает, что к ним невозможно подключиться с помощью портала Azure. Команда Подключиться недоступна при просмотре свойств виртуальной машины. Используйте программу "Подключение к удаленному рабочему столу" или другое аналогичное средство, чтобы подключиться к виртуальной машине по ее частному IP-адресу или DNS-имени интрасети.Because these virtual machines are for an intranet application, they are not assigned a public IP address or a DNS domain name label and exposed to the Internet. However, this also means that you cannot connect to them from the Azure portal. The Connect option is unavailable when you view the properties of the virtual machine. Use the Remote Desktop Connection accessory or another Remote Desktop tool to connect to the virtual machine using its private IP address or intranet DNS name.

Настройка первого контроллера доменаConfigure the first domain controller

Используя любой клиент удаленного рабочего стола, создайте подключение к удаленному рабочему столу для виртуальной машины первого контроллера домена. Используйте DNS-имя интрасети или имя компьютера, а также учетные данные локального администратора.Use the remote desktop client of your choice and create a remote desktop connection to the first domain controller virtual machine. Use its intranet DNS or computer name and the credentials of the local administrator account.

Далее добавьте дополнительный диск данных в первый контроллер домена с этой командой из командной Windows PowerShell на первом виртуальном компьютере контроллера домена:Next, add the extra data disk to the first domain controller with this command from a Windows PowerShell command prompt on the first domain controller virtual machine:

Get-Disk | Where PartitionStyle -eq "RAW" | Initialize-Disk -PartitionStyle MBR -PassThru | New-Partition -AssignDriveLetter -UseMaximumSize | Format-Volume -FileSystem NTFS -NewFileSystemLabel "WSAD Data"

Затем протестируйте соединение первого контроллера домена с расположениями в сети организации с помощью команды ping для имен и IP-адресов ресурсов в этой сети.Next, test the first domain controller's connectivity to locations on your organization network by using the ping command to ping names and IP addresses of resources on your organization network.

Это позволяет убедиться, что разрешение DNS-имен работает надлежащим образом (виртуальная машина правильно настроена с указанием локальных DNS-серверов), а в распределенную виртуальную сеть и из нее можно отправлять пакеты. В случае сбоя базового теста обратитесь в ИТ-отдел для устранения проблем с разрешением DNS-имен и доставкой пакетов.This procedure ensures that DNS name resolution is working correctly (that the virtual machine is correctly configured with on-premises DNS servers) and that packets can be sent to and from the cross-premises virtual network. If this basic test fails, contact your IT department to troubleshoot the DNS name resolution and packet delivery issues.

Затем в командной строке Windows PowerShell на первом контроллере домена выполните следующие команды:Next, from the Windows PowerShell command prompt on the first domain controller, run the following commands:

$domname="<DNS domain name of the domain for which this computer will be a domain controller, such as corp.contoso.com>"
$cred = Get-Credential -Message "Enter credentials of an account with permission to join a new domain controller to the domain"
Install-WindowsFeature AD-Domain-Services -IncludeManagementTools
Install-ADDSDomainController -InstallDns -DomainName $domname  -DatabasePath "F:\NTDS" -SysvolPath "F:\SYSVOL" -LogPath "F:\Logs" -Credential $cred

Вам будет предложено указать учетные данные администратора домена. Компьютер перезагрузится.You will be prompted to supply the credentials of a domain administrator account. The computer will restart.

Настройка второго контроллера доменаConfigure the second domain controller

Используя любой клиент удаленного рабочего стола, создайте подключение к удаленному рабочему столу на виртуальной машине второго контроллера домена. Используйте DNS-имя интрасети или имя компьютера, а также учетные данные локального администратора.Use the remote desktop client of your choice and create a remote desktop connection to the second domain controller virtual machine. Use its intranet DNS or computer name and the credentials of the local administrator account.

Далее необходимо добавить дополнительный диск данных во второй контроллер домена с этой командой из командной Windows PowerShell на втором виртуальном компьютере контроллера домена:Next, you need to add the extra data disk to the second domain controller with this command from a Windows PowerShell command prompt on the second domain controller virtual machine:

Get-Disk | Where PartitionStyle -eq "RAW" | Initialize-Disk -PartitionStyle MBR -PassThru | New-Partition -AssignDriveLetter -UseMaximumSize | Format-Volume -FileSystem NTFS -NewFileSystemLabel "WSAD Data"

Затем выполните следующие команды:Next, run the following commands:

$domname="<DNS domain name of the domain for which this computer will be a domain controller, such as corp.contoso.com>"
$cred = Get-Credential -Message "Enter credentials of an account with permission to join a new domain controller to the domain"
Install-WindowsFeature AD-Domain-Services -IncludeManagementTools
Install-ADDSDomainController -InstallDns -DomainName $domname  -DatabasePath "F:\NTDS" -SysvolPath "F:\SYSVOL" -LogPath "F:\Logs" -Credential $cred

Вам будет предложено указать учетные данные администратора домена. Компьютер перезагрузится.You will be prompted to supply the credentials of a domain administrator account. The computer will restart.

Теперь необходимо обновить DNS-серверы для виртуальной сети, чтобы служба Azure назначила виртуальным машинам IP-адреса двух новых контроллеров домена в качестве DNS-серверов.Next, you need to update the DNS servers for your virtual network so that Azure assigns virtual machines the IP addresses of the two new domain controllers to use as their DNS servers. Заполните переменные и запустите эти команды из командной Windows PowerShell на локальном компьютере:Fill in the variables and then run these commands from a Windows PowerShell command prompt on your local computer:

$rgName="<Table R - Item 4 - Resource group name column>"
$adrgName="<Table R - Item 1 - Resource group name column>"
$locName="<your Azure location>"
$vnetName="<Table V - Item 1 - Value column>"
$onpremDNSIP1="<Table D - Item 1 - DNS server IP address column>"
$onpremDNSIP2="<Table D - Item 2 - DNS server IP address column>"
$staticIP1="<Table I - Item 1 - Value column>"
$staticIP2="<Table I - Item 2 - Value column>"
$firstDCName="<Table M - Item 1 - Virtual machine name column>"
$secondDCName="<Table M - Item 2 - Virtual machine name column>"

$vnet=Get-AzVirtualNetwork -ResourceGroupName $rgName -Name $vnetName
$vnet.DhcpOptions.DnsServers.Add($staticIP1)
$vnet.DhcpOptions.DnsServers.Add($staticIP2) 
$vnet.DhcpOptions.DnsServers.Remove($onpremDNSIP1)
$vnet.DhcpOptions.DnsServers.Remove($onpremDNSIP2) 
Set-AzVirtualNetwork -VirtualNetwork $vnet
Restart-AzVM -ResourceGroupName $adrgName -Name $firstDCName
Restart-AzVM -ResourceGroupName $adrgName -Name $secondDCName

Обратите внимание, что мы перезагружаем два контроллера домена, чтобы они не были настроены с указанием локальных DNS-серверов. Так как они оба сами являются DNS-серверами, эти контроллеры были автоматически настроены с указанием локальных DNS-серверов пересылки при повышении до контроллеров домена.Note that we restart the two domain controllers so that they are not configured with the on-premises DNS servers as DNS servers. Because they are both DNS servers themselves, they were automatically configured with the on-premises DNS servers as DNS forwarders when they were promoted to domain controllers.

После этого необходимо создать сайт репликации Active Directory, чтобы убедиться, что серверы в виртуальной сети Azure используют локальные контроллеры домена. Подключитесь к любому контроллеру домена, используя учетную запись администратора домена, и выполните следующие команды в командной строке Windows PowerShell с правами администратора:Next, we need to create an Active Directory replication site to ensure that servers in the Azure virtual network use the local domain controllers. Connect to either domain controller with a domain administrator account and run the following commands from an administrator-level Windows PowerShell prompt:

$vnet="<Table V - Item 1 - Value column>"
$vnetSpace="<Table V - Item 4 - Value column>"
New-ADReplicationSite -Name $vnet 
New-ADReplicationSubnet -Name $vnetSpace -Site $vnet

Настройка сервера синхронизации каталоговConfigure the directory synchronization server

Используйте удаленный клиент рабочего стола по вашему выбору и создайте удаленное настольное подключение к виртуальной машине сервера синхронизации каталогов.Use the remote desktop client of your choice and create a remote desktop connection to the directory synchronization server virtual machine. Используйте DNS-имя интрасети или имя компьютера, а также учетные данные локального администратора.Use its intranet DNS or computer name and the credentials of the local administrator account.

Далее присоединитесь к соответствующему домену AD DS с этими командами в Windows PowerShell запросе.Next, join it to the appropriate AD DS domain with these commands at the Windows PowerShell prompt.

$domName="<AD DS 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

Здесь показана конфигурация, полученная в результате успешного выполнения этого этапа (с заполнителями вместо имен компьютеров).Here is the configuration resulting from the successful completion of this phase, with placeholder computer names.

Этап 2. Контроллеры домена и сервер синхронизации каталогов для инфраструктуры федерарной проверки подлинности высокой доступности в AzurePhase 2: The domain controllers and directory synchronization server for your high availability federated authentication infrastructure in Azure

Этап 2 высокой доступности инфраструктуры федерарной проверки подлинности Microsoft 365 в Azure с контроллерами домена

Следующий шагNext step

Используйте этап 3. Настройка серверов AD FS для продолжения настройки этой рабочей нагрузки.Use Phase 3: Configure AD FS servers to continue configuring this workload.

См. такжеSee Also

Развертывание федеративной проверки подлинности для обеспечения высокой доступности Microsoft 365 в AzureDeploy high availability federated authentication for Microsoft 365 in Azure

Federated identity for your Microsoft 365 dev/test environmentFederated identity for your Microsoft 365 dev/test environment

Центр архитектуры и решений Microsoft 365Microsoft 365 solution and architecture center