Администрирование ролей FSMO
Во избежание конфликтов и дублирования некоторые операции по изменению данных в Active Directory сначала выполняются на одном специально выделенном для этого контроллере домена, а затем реплицируются на все остальные контроллеры в рамках домена или леса.
Для управления выполнением таких операций в Active Directory используется механизм ролей, назначаемых контроллерам домена.
Каждая роль соответствует определенной операции, для успешного выполнения которой требуется обеспечить уникальность исполнителя (Flexible Single Master Operation, FSMO).
Для администрирования ролей FSMO в домене Samba AD с помощью утилиты samba-tool используется группа подкоманд fsmo.
При выполнении операций с помощью подкоманды fsmo всегда указывается набор ключей -H (URI LDAP-сервера) и --use-kerberos=required. По умолчанию в качестве значения ключа -H передается текущий хост в формате ldap://<имя хоста>.
|
Роли FSMO
В Active Directory существуют следующие роли FSMO:
-
эмулятор первичного (основного) контроллера домена (PDC Emulator) — один на домен;
-
хозяин относительных идентификаторов (RID Master) — один на домен;
-
хозяин схемы (Schema Master) — один на лес;
-
хозяин доменных имен (Domain Naming Master) — один на лес;
-
хозяин инфраструктуры (Infrastructure Master) — один на домен;
-
хозяин зон DNS домена (Domain DNS Zone Master) — один на домен;
-
хозяин зон DNS леса (Forest DNS Zone Master) — один на лес.
Эмулятор первичного (основного) контроллера домена (PDC Emulator)
Контроллер домена с ролью PDC Emulator выполняет следующие функции:
-
сервер точного времени;
Для аутентификации по протоколу Kerberos требуется точная синхронизация времени. Все клиенты в домене синхронизируют свое время с временем контроллера домена с ролью PDC Emulator.
При наличии нескольких доменов сервер с ролью PDC Emulator каждого домена синхронизирует свое время с временем сервера с ролью PDC Emulator в корневом домене леса AD, который в свою очередь настраивается для получения времени из внешнего источника.
-
приоритетная репликация результатов операций по смене пароля, выполняемых на других контроллерах в домене;
Если сервер с ролью PDC Emulator недоступен, данные о смене паролей реплицируются на все контроллеры в домене, но для этого требуется больше времени.
-
обработка блокировок учетных записей;
На сервер с ролью PDC Emulator передается информация о неудачных попытках аутентификации со всех контроллеров в домене перед отображением соответствующих сообщений пользователям. Сервер выполняет блокировку учетных записей в соответствии с настроенными в домене политиками.
-
внесение изменений в групповые политики в домене.
Если контроллер домена с данной ролью используется клиентами для синхронизации времени, его доступность является обязательным условием корректной работы Kerberos. Если для синхронизации времени клиенты используют другой источник, временное отсутствие сервера с ролью PDC Emulator в домене не является критическим.
Для определения в домене сервера с ролью PDC Emulator используйте следующую команду:
host -t SRV _ldap._tcp.pdc._msdcs.<domain>
Хозяин относительных идентификаторов (RID Master)
Владелец роли RID Master выполняет следующие функции:
-
выделяет пулы относительных идентификаторов (RID) в ответ на запросы контроллеров домена;
-
обеспечивает перемещение объектов в домен и из него.
Всем объектам безопасности (например, учетным записям компьютеров и пользователей, группам) присваиваются идентификаторы безопасности (SID), состоящие из двух частей:
-
идентификатор безопасности (SID) домена, который является одинаковым для всех объектов внутри домена;
-
относительный идентификатор (RID), который является уникальным внутри домена.
В следующем примере цифры 1121 — это относительный идентификатор (RID) объекта внутри домена:
-
SID домена:
S-1-5-21-3134998938-619743855-3616620706; -
SID объекта (учетной записи пользователя или компьютера, группы и т. п.) внутри домена:
S-1-5-21-3134998938-619743855-3616620706-1121.
За каждым контроллером домена закрепляется определенный пул относительных идентификаторов (RID), которые могут присваиваться объектам безопасности при их создании внутри домена. Пул составляет 500 уникальных относительных идентификаторов.
При использовании пула на 50% контроллер домена обращается к владельцу роли RID Master с запросом на выделение нового диапазона относительных идентификаторов.
Контроллер домена с ролью RID Master должен быть доступен в следующих случаях:
-
добавление нового контроллера домена для выделения ему пула относительных идентификаторов (RID);
-
обновление пулов на существующих контроллерах домена.
При недоступности сервера с ролью RID Master новые объекты безопасности создаются до момента исчерпания существующих локальных пулов RID. При полном исчерпании пулов создание новых объектов становится невозможным.
Также в этом случае в домен не могут добавляться новые контроллеры.
Хозяин схемы (Schema Master)
Контроллер домена с ролью Schema Master обрабатывает изменения, вносимые в схему каталога (раздел «Контекст именования схемы», путь — LDAP://CN=schema,CN=configuration,DC=<domain>) на уровне леса. Изменения могут вноситься только на этом контроллере, после чего они реплицируются на остальные контроллеры домена.
Таким образом, контроллер домена с ролью Schema Master должен быть доступен при внесении изменений в схему каталога.
Хозяин доменных имен (Domain Naming Master)
Контроллер домена с ролью Domain Naming Master обрабатывает изменения, вносимые в пространство доменных имен на уровне леса каталога (раздел «Контекст именования конфигурации», путь — LDAP://CN=Partitions,CN=Configuration,DC=<domain>), включая добавление в лес и удаление из него доменов, установление доверия с внешними каталогами, добавление в каталог и удаление из него разделов приложений. Изменения могут вноситься только на этом контроллере, после чего они реплицируются на остальные контроллеры домена.
Таким образом, контроллер домена с ролью Domain Naming Master должен быть доступен при установлении доверительных отношений с внешними каталогами, а также добавлении в лес и удалении из него доменов и разделов приложений.
Хозяин инфраструктуры домена (Infrastructure Master)
Контроллер домена с ролью Infrastructure Master обрабатывает изменения, вносимые в идентификаторы безопасности (SID) объектов и DN-имена в междоменных ссылках на объекты (например, когда пользователь из одного домена добавляется в группу безопасности в другом домене).
Данная роль существует даже в лесу с одним доменом.
Контроллер домена с ролью Infrastructure Master должен быть доступен при внесении изменений в междоменные ссылки на объекты.
Просмотр списка текущих владельцев ролей FSMO
Для просмотра списка владельцев ролей FSMO с помощью утилиты samba-tool выполните следующую команду на любом контроллере домена:
samba-tool fsmo show InfrastructureMasterRole owner: CN=NTDS Settings,CN=DC1,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=samdom,DC=example,DC=com RidAllocationMasterRole owner: CN=NTDS Settings,CN=DC1,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=samdom,DC=example,DC=com PdcEmulationMasterRole owner: CN=NTDS Settings,CN=DC1,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=samdom,DC=example,DC=com DomainNamingMasterRole owner: CN=NTDS Settings,CN=DC1,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=samdom,DC=example,DC=com SchemaMasterRole owner: CN=NTDS Settings,CN=DC1,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=samdom,DC=example,DC=com DomainDnsZonesMasterRole owner: CN=NTDS Settings,CN=DC1,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=samdom,DC=example,DC=com ForestDnsZonesMasterRole owner: CN=NTDS Settings,CN=DC1,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=samdom,DC=example,DC=com
Передача роли FSMO
Для передачи роли FSMO от одного контроллера домена другому выполните следующие действия:
-
Выполните вход на контроллер домена, которому должна быть передана роль.
-
Выполните передачу роли с помощью следующей команды:
samba-tool fsmo transfer --role=<role> FSMO transfer of '<role>' role successful
Параметр
--roleможет принимать следующие значения:-
pdc— эмулятор первичного (основного) контроллера домена (PDC Emulator); -
rid— хозяин относительных идентификаторов (RID Master); -
schema— хозяин схемы (Schema Master); -
naming— хозяин доменных имен (Domain Naming Master); -
infrastructure— хозяин инфраструктуры (Infrastructure Master); -
domaindns— хозяин зон DNS домена (Domain DNS Zone Master); -
forestdns— хозяин зон DNS леса (Forest DNS Zone Master).
-
-
Убедитесь, что роль передана с помощью следующей команды:
samba-tool fsmo show
Захват роли FSMO
Для передачи роли FSMO с возможностью принудительного ее захвата выполните следующие действия:
-
Выполните вход на контроллер домена, которому должна быть принудительно передана роль.
-
Выполните передачу роли с помощью следующей команды:
samba-tool fsmo seize --role=<role> Attempting transfer... Transfer unsuccessful, seizing... FSMO seize of '<role>' role successful
Подкоманда может принимать следующие параметры:
-
--force— выполнить принудительный захват роли без попытки передачи; -
--roleможет принимать следующие значения:-
pdc— эмулятор первичного (основного) контроллера домена (PDC Emulator); -
rid— хозяин относительных идентификаторов (RID Master); -
schema— хозяин схемы (Schema Master); -
naming— хозяин доменных имен (Domain Naming Master); -
infrastructure— хозяин инфраструктуры (Infrastructure Master); -
domaindns— хозяин зон DNS домена (Domain DNS Zone Master); -
forestdns— хозяин зон DNS леса (Forest DNS Zone Master).
-
-
-
Убедитесь, что роль передана с помощью следующей команды:
samba-tool fsmo show
-
Обеспечьте невозможность подключения прежнего владельца роли к сети.
Обязательным условием успешного выполнения команды передачи или захвата ролей domaindns и forestdns является прохождение аутентификации.
|
Рекомендации по передаче и захвату ролей FSMO
Рекомендуется во всех случаях передавать роли FSMO без использования операции принудительного захвата.
Однако для такой передачи требуется, чтобы передающий контроллер домена продолжал работу и был подключен к сети.
В случае выхода из строя контроллера домена, являющегося владельцем роли FSMO, может использоваться операция принудительного захвата с целью передачи роли одному из работающих контроллеров.
После выполнения захвата следует исключить подключение прежнего владельца роли к сети, так как это неизбежно приведет к конфликтам и неконсистентности данных в Active Directory.
Рекомендации по обработке ситуаций потери соединения с контроллером домена с ролью FSMO
Контроллер домена с ролью FSMO может быть недоступен по следующим причинам:
-
Требуется выполнить плановые работы по обслуживанию, после завершения которых сервер продолжит работу.
Если в период отсутствия соединения с контроллером домена планируется выполнять действия, предусмотренные его ролью FSMO, следует временно передать такую роль одному из работающих контроллеров.
-
Планируется сместить сервер с роли контроллера домена (операция
demote).Перед смещением требуется передать все роли FSMO от смещаемого сервера другим серверам, продолжающим работу в роли контроллера домена.
-
Контроллер домена выходит из строя.
В этом случае рекомендуется придерживаться следующей последовательности действий:
-
Выясните, какие роли оказываются недоступны и какое влияние это может оказать на работу леса.
-
Попытайтесь восстановить работу контроллера домена и вернуть его в сеть.
При этом ни в коем случае не восстанавливайте контроллер из резервной копии, если в домене есть другие работающие контроллеры.
-
Если восстановить работу контроллера домена невозможно, выполните захват закрепленных за ним ролей с передачей их работающим контроллерам и сместите вышедший из строя сервер с роли контроллера домена.
-