Windows Server Core эта хорошая платформа для размещения роли контроллера домена Active Directory из за уменьшенных требования к ресурсам, повышенной стабильности и безопасности (за счет меньшего количества кода и обновлений). В этой статье мы покажем, как установить контроллер домена в новом или существующем лесу Active Directory на Windows Server Core 2016 из консоли с помощью команд PowerShell.
Установка контроллера домена Active Directory с помощью PowerShell
Установите Windows Server Core на новый хост (физический или виртуальный), выполните базовую настройку нового сервера: задайте имя сервера, сетевые настройки (статический IP адрес, маску сети, шлюз, DNS), дату/время, часовой пояс и т.д.
Rename-Computer -NewName spb-dc03
Get-NetAdapter
$ip = "192.168.113.11"
$gw="192.168.113.1"
$dns = "192.168.13.11"
New-NetIPAddress -InterfaceAlias Ethernet -IPAddress $ip -AddressFamily IPv4 -PrefixLength 24 –DefaultGateway $gw
Set-DnsClientServerAddress -InterfaceAlias Ethernet -ServerAddresses $dns
Следующий шаг – установка роли Active Directory Domain Services (ADDS). Для этого нужно в консоли PowerShell выполнить команду:
Install-WindowsFeature AD-Domain-Services –IncludeManagementTools -Verbose
Проверим, что роль AD-Domain-Services установлена:
Get-WindowsFeature -Name *AD*
[/alert]
После установки роли ADDS можно использовать командлеты из модуля ADDSDeployment для развертывания нового домена, леса или контроллера домена:
Get-Command -Module ADDSDeployment
Есть три возможных дальнейших сценария:
- Установка нового леса Active Directory (пример команды:
Install-ADDSForest -DomainName winitpro.ru -ForestMode Win2012R2 -DomainMode Win2012R2 -DomainNetbiosName WINITPRO -InstallDns:$true
- Командлет
Install-ADDSDomain
позволяет создать новый домен в существующем лесу Active Directory; -
Install-ADDSDomainController
– позволяет добавить новый контроллер домена в существующий домен Active DirectoryЕсли вам нужно создать RODC контроллера домена, используйте командлетAdd-ADDSReadOnlyDomainControllerAccount
.
В большинстве случае вы будете использовать 3 сценарий — добавление дополнительного контроллера домена в существующий домен Active Directory
Dcdiag /v
и проверьте репликацию AD (
repadmin /showrepl
и
repadmin /replsum
). Убедитесь, что у вас есть актуальная резервная копия контроллеров домена.В самом простом варианте, когда вам нужно добавить новый дополнительный DC в Default-First-Site-Name сайт, выполните команду
Install-ADDSDomainController -DomainName "test.com" -InstallDns -Credential (get-credential TEST\Administrator) -DatabasePath "D:\ADDS\DB" -LogPath "D:\ADDS\Log" -SysvolPath "D:\ADDS\SYSVOL"
%SYSTEMROOT%\NTDS
и
%SYSTEMROOT%\SYSVOL
.Можно сразу указать нужный сайт Active Directory, в который нужно поместить новый контроллер домена. Также укажем, что данный DC будет Global Catalog и зададим пароль режима восстановления DSRM (Directory Services Restore Mode) через ConvertTo-SecureString:
Install-ADDSDomainController -DomainName test.com -InstallDns:$true -NoGlobalCatalog:$false -SiteName 'SPB' -NoRebootOnCompletion:$true -Force:$true -SafeModeAdministratorPassword (ConvertTo-SecureString 'P@ssw0rd' -AsPlainText -Force) -Credential (get-credential TEST\Administrator) –verbose
Внимательно исследуйте результаты команды, если все прошло хорошо — перезагрузить сервер:
Restart-Computer
Диагностика состояния нового контроллера домена на Server Core
После окончания установки контроллера домена выполним несколько базовых проверок, чтобы убедится, что новый контроллер домена успешно добавлен в домен, и участвует в репликации.
Вы можете управлять контроллером домена на Windows Server Core с помощью стандартных графических Active Directory (
dsa.msc, gpmc.msc, dnsmgmt.msc, dssite.msc, adsiedit.msc, domain.msc
) оснасток с другого сервера или компьютера Windows 10 с установленным RSAT (
Rsat.ActiveDirectory.DS-LDS.Tool
).
На любом компьютере откройте консоль ADUC и проверьте, что в OU Domain Controllers появился новый DC.
После перезагрузки сервера Windows Server Core вам нужно авторизоваться на сервере под учетной записью с правами администратора домена.
С помощью комнадлета Get-ADDomainController проверьте, что контроллер домена определяется в правильном сайте:
Get-ADDomainController -Discover
Проверьте, что службы Active Directory запущены:
Get-Service adws,kdc,netlogon,dns
Кроме скрытых админских шар должны быть опубликованы сетевые каталоги SYSVOL и Netlogon:
get-smbshare
Проверьте, что в Event Viewer есть события от служб ADDS:
Get-Eventlog "Directory Service" | Select-Object entrytype, source, eventid, message
Get-Eventlog "Active Directory Web Services" | Select-Object entrytype, source, eventid, message
Затем выполните тест командой dcdiag (все этапы должны быть Passed), и проверьте репликацию между DC командой:
repadmin /replsummary
или
Get-ADReplicationFailure -Target DC03
Netdom /query FSMO
Установка контроллера домена с помощью Windows Admin Center
Для установки контроллера домена на Windows Server Core также можно использовать веб интерфейс Windows Admin Center (WAC).
- Добавьте свой хост с Windows Server Core в интерфейс Windows Admin Center;
- Для установки роли ADDS перейдите в раздел Roles and Features, в списке доступных ролей выберите Active Directory Domain Services и выберите Install;
- Подтвердите установку роли и средств администрирования;
- Для повышения сервера до контроллера домена нужно открыть веб консоль PowerShell и воспользоваться рассмотренными выше командлетами для настройки DC;
- После окончания установки DC нужно перезагрузить Server Core и переподключить его в WAC под доменной учетной записью;
- Для управления Active Directory из веб интерфейса можно установить специальное расширение WAC (доступно пока в Preview режиме). В результате у вас в Windows Admin Center появится новый раздел, в котором можно просматривать и управлять деревом AD.
Могу вас подробнее осветить вопрос связи DC и DNS?
А именно, какой/какие адреса DNS-srv следует указывать в настройках TCP/IP DC для случая, когда DC это первый контроллер нового домна в новом лесу и для случая, когда это дополнительный контроллер в существующем домене.
Дополнение:
Предполагается, что DNS-сервер используется/устанавливается от MS, а зоны интегрированы в AD.
В настройках DNS можно ЯВНО указать какой ip «слушать». По умолчанию «слушаются» все адреса.
1-м указывается 127.0.0.1 или локальный ip.
Проверить легко
telnet 127.0.0.1 53
и если пройдет, то 1-м ставим 127.0.0.1Тоже самое и доп. DC . Сперва его локальный ip или 127.0.0.1, вторым — адрес основного DC.
Спасибо.
Всё понятно, кроме этой фразы:
Что значит «по-умолчанию» и что значит «слушаются»?
В моём понимании, DC (как, впрочем, и любой др.хост сети) для разрешения имён в адреса использует тот DNS-srv, которые указан в настройках его стека протоколов (в ручную или получен от DHCP-srv). О каком «по-умолчанию» здесь можно говорить?
И потом, что значит
? Как локальный DNS resolver может «слушать» все адреса? Использовать для разрешения имён несколько адресов DNS-srv (если их указано несколько) — это я понимаю. А вашу фразу — понять не могу.
Тот же Best Practices Analyzer при анализе натсроек DC пишет:
The network adapter does not list the loopback IP address as a DNS server, or it is configured as the first DNS server on this adapter.
If the loopback IP address is the first entry in the list of DNS servers, Active Directory might be unable to find its replication partners.
Решение:
Configure adapter settings to add the loopback IP address to the list of DNS servers on all active interfaces, but not as the first server in the list.
_https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/ff807362(v=ws.10)?redirectedfrom=MSDN
Для первого/единственного DC — 127.0.0.1 обязателен.
Для случая 2 DC — должны слушать в первую очередь своих основных партнеров по репликации, чтобы иметь возможнось получать информацию о запущенных сервисах после перезагрузки, во вторых — себя.
Для 3+ DC — я loopback не устанавливал
Спасибо.
Этот ответ мне понятен.
Неправильно. Т.е. если один dc, то смотрит в свой scope, а если есть сосед, то смотреть в его scope? Бред. Логики никакой, равно как «получать информацию о запущенных сервисах». DNS не занимается этим. Итак, если имеем два dc, то:
dc1: primary dns — свой ip dc1 (использовать свой scope) alternate dns — ip dc2
dc2: primary dns — свой ip dc2 (использовать свой scope) alternate dns — ip dc1
и не надо никаких 127.0.0.1. это адрес заглушки для теста стека протокола tcp/ip. Юзайте адрес интерфейса.
На собеседовании многие не могут ответить что нам дает ping 127.0.0.1. Ну, получили мы ответы и что мы выяснили? Учите матчасть, в конце концов!
usercomp: dns1-dc1; dns2-dc2; dns3-8.8.8.8 (как пример)
Вот вам best practise
https://learn.microsoft.com/en-us/answers/questions/692239/ms-best-practise-for-dns-configuration-on-2-dcs
Вот вам еще Best Practice:
https://social.technet.microsoft.com/Forums/windowsserver/en-US/b7bf37a2-6e1a-40a8-8d4b-1c15ee9bc0fa/2k8-best-practice-for-setting-the-dns-server-list-on-a-dcdns-server-for-an-interface?forum=winserverNIS
—
Sapienti sat
Всем привет, подскажите пожалуйста следующий момент: Приехал сервер с Windows Server 2019 std на борту уже с именем предположим ardatov. Из него надо было сделать контроллер домена. Я его переименовал в ardat-dc-01 с доменом ardat.local. Всё хорошо, всё работает, но кое что смущает. На него можно залезть и ardat\administrator и ardatov\administrator. Это нормально или что то не так?
На dc не должно быть локального админа. Он точно у вас повыше до DC? или просто роль устаонвлена?
под локальным administrator можно зайти только в режиме DSRM