Присоединение к домену
Для присоединения к домену используется следующий формат вызова:
samba-tool domain join <dns-domain> [DC|RODC|MEMBER] [options]
При присоединении указываются имя домена и роль, которую будет выполнять в домене присоединяемый сервер.
Параметры
Параметры вызова:
-
<dns-domain>— имя домена; -
[DC|RODC|MEMBER]— роль, в которой требуется выполнить присоединение:-
DC— контроллер домена; -
RODC— контроллер домена с копией базы AD, доступной только для чтения;Присоединение к домену в роли RODC реализовано частично. -
MEMBER— участник домена;
-
-
--server=SERVER— контроллер домена для присоединения;При вводе нового контроллера в дочерний домен в многодоменном лесу в качестве прокси используется один из существующих контроллеров домена (proxy DC). Он отвечает за внесение изменений в соответствующие записи, которые затем должны реплицироваться на контроллер домена с ролью
FSMO Naming Master.Если опция
--serverне указана, такой прокси-контроллер выбирается автоматически по определенному алгоритму. В случае использования опции в качестве прокси выступает указанный в ней сервер.Для корректной работы механизма проксирования необходимо, чтобы существовал такой контроллер домена, с которого контроллер домена с ролью
FSMO Naming Masterмог бы получить разделConfigurationпосредством репликации. Если такой контроллер отсутствует, то в логе операции присоединения будет содержаться следующее сообщение:Site to search connections is: Default-First-Site-Name Connecting to FSMO Domain Naming Master st01-win-r-dc1.ROOTST01.LAN Error during extra server search, might not be critical: (8419, 'No replication partners found: WERR_DS_CANT_FIND_DSA_OBJ, check if intrasite replication is enabled and use repadmin or samba-tool on Naming Master to check replication status') DC st01-win-r-dc1.ROOTST01.LAN will be used
Оно указывает на то, что у контроллера домена с ролью
FSMO Naming Masterнет подходящих партнеров по репликации.Чтобы решить данную проблему, необходимо:
-
На контроллере домена с ролью
FSMO Naming Masterсоздать контракт на репликацию с одним из контроллеров в том домена, в который требуется ввести новый контроллер. -
Перезапустить процедуру присоединения. При этом можно как явно указать целевой прокси-контроллер вручную с помощью опции
--server, так и задействовать механизм автоматического определения.
В случае успешного завершения операции в логе должно содержаться сообщение вида:
Site to search connections is: Default-First-Site-Name Connecting to FSMO Domain Naming Master st01-win-r-dc1.ROOTST01.LAN DCs suitable for join in a domain CHILDST01.ROOTST01.LAN * st01-win-c-dc1.CHILDST01.ROOTST01.LAN in a site Default-First-Site-Name * st01-win-c-dc2.CHILDST01.ROOTST01.LAN in a site Default-First-Site-Name Testing if server st01-win-c-dc1.CHILDST01.ROOTST01.LAN is alive The site of the proxy DC (st01-win-c-dc1.CHILDST01.ROOTST01.LAN) is equal to the specified one (Default-First-Site-Name) Determined proxy DC with Naming Master replication contract: st01-win-c-dc1.CHILDST01.ROOTST01.LAN
Сообщение имеет следующую структуру:
-
список подходящих контроллеров в домене, которые указаны в контрактах на репликацию раздела
Configuration, а также сайты, в которых они расположены; -
описание процесса перебора контроллеров в порядке указания с информацией о результатах тестирования их доступности;
-
дополнительная (некритичная) проверка на совпадение контроллера по сайту.
При выполнении всех прочих условий в ходе перебора предпочтение отдается контроллеру, находящемуся в том сайте, в который вводится новый контроллер.
В общем случае при указании сервера в качестве прокси для операции присоединения рекомендуется выбирать ближайший, то есть находящийся в том же сайте и в том же домене, а также наиболее производительный и/или менее нагруженный контроллер.
-
-
--site=SITE— сайт для присоединения; -
--domain-critical-only— включать в репликацию только критически важные доменные объекты; -
--dns-backend=NAMESERVER-BACKEND— DNS-сервер; возможные значения:SAMBA_INTERNAL | BIND9_DLZ | NONE; -
--machinepass=PASSWORD— пароль учетной записи компьютера (если не указан, генерируется случайным образом); -
--plaintext-secrets— хранение секретов в незашифрованном виде на диске; по умолчанию используется шифрование; -
--backend-store=BACKENDSTORE— тип базы данных каталога; возможные значения:tdb | mdb; значение по умолчанию —tdb; -
--backend-store-size=SIZE— максимальный размер файлов базы данных каталога; поддерживается только для баз данных LMDB (--backend-store=mdb); значение по умолчанию — 8 ГБ; -
--target-dir=DIR— каталог для выполнения инициализации; -
--no-dns-updates— выключение обновления данных DNS при присоединении; значение по умолчанию —False; -
--no-gc— выключение роли Global Catalog (GC) для нового контроллера при присоединении к домену; значение по умолчанию —False; -
--enablerecyclebin— включение функциональности корзины (см. подробнее в разделе «Управление корзиной»); значение по умолчанию —False;Ключ предназначен для использования при присоединении сервера к домену AD, в котором уже включена функциональность корзины. -
--no-links-post-check— отключение выполнения отдельной процедуры проверки ссылочных атрибутов в конце операции присоединения; -
--force-cleanup-previous-join— принудительная очистка результатов предыдущих запусков операцииjoin;При установке данной опции перед выполнением операции принудительно удаляются существующие контроллеры домена с таким же NetBIOS-именем, как у вводимого в домен сервера.
Если опция не установлена, при обнаружении одноименных контроллеров домена выводится предупреждение с запросом на подтверждение операции:
An existing DC with %s netbios name was found (%d times)! Confirm that you want to delete the existing DC with %s netbios name? (type 'yes')
В случае получения утвердительного ответа (
yes) существующие одноименные контроллеры домена удаляются. -
-v|--verbose— вывод детальной информации; -
-q|--quiet— тихий режим (отключает вывод диагностических сообщений во время работы подкоманды).
|
Для обеспечения совместимости с существующим программным обеспечением в Эллес по умолчанию разрешено использование устаревших алгоритмов шифрования и обмена ключами при подключении к серверу LDAP. Чтобы повысить уровень безопасности, рекомендуется их отключить, добавив следующий параметр в раздел [global]
tls priority = NORMAL:-VERS-TLS1.0:-VERS-TLS1.1:-RSA
Параметр изменяет список приоритетов библиотеки GnuTLS по умолчанию (см. подробнее в документации на библиотеку). |
|
По умолчанию при присоединении на контроллере домена включается механизм автоматического покрытия сайтов без контроллеров домена. Если в силу особенностей топологии сети присоединяемый сервер не должен использоваться службой каталогов для обслуживания сайтов в рамках данного механизма, он может быть отключен с помощью конфигурационного параметра Также при присоединении могут быть явно заданы сайты, которые должны обслуживаться присоединяемым контроллером домена, с помощью конфигурационных параметров См. подробнее в разделе «Покрытие сайтов контроллерами домена». |
Примеры
Пример присоединения в роли контроллера домена с указанием функционального уровня и отключением устаревших алгоритмов шифрования:
samba-tool domain join samdom.example.com DC -UAdministrator \
--dns-backend=BIND9_DLZ \
--backend-store=mdb \
--backend-store-size=16Gb \
--option="ad dc functional level = 2012_R2" \
--option="tls priority = NORMAL:-VERS-TLS1.0:-VERS-TLS1.1:-RSA"
Пример присоединения в роли контроллера домена в многодоменном лесу с отключением функциональности глобального каталога:
samba-tool domain join multidomain.com DC -UAdministrator \ --option="ad dc functional level=2016" \ --server=ad-dc-server \ --dns-backend=BIND9_DLZ \ --backend-store=mdb \ --domain-critical-only \ --no-gc
Пример присоединения в роли контроллера домена с отключением механизма автоматического покрытия сайтов:
samba-tool domain join samdom.example.com DC -UAdministrator \ --dns-backend=BIND9_DLZ \ --backend-store=mdb \ --option="dns:auto site coverage = off"
Пример присоединения в роли RODC:
samba-tool domain join samdom.example.com RODC -UAdministrator \
--dns-backend=BIND9_DLZ \
--site=Site2 \
--server=dc2.samdom.example.com
Пример присоединения в роли участника:
samba-tool domain join samdom.example.com MEMBER -UAdministrator
Сообщения в логе
В таблице Табл. 1 приводится классификация сообщений, формируемых при выполнении samba-tool domain join на различных уровнях журналирования, с точки зрения влияния вызывавших их событий на успешность операции присоединения к домену (ошибка, отладочное сообщение). Указываются возможные источники сообщений с кратким описанием причин их появления в логе.
| Уровень | Пример сообщения | Ошибка | Комментарий |
|---|---|---|---|
4 |
Analyze and apply schema objects debug: Failed to convert schema object CN=Security-Principal,CN=Schema,CN=Configuration,DC=domain,DC=name into ldb msg, will try during next loop debug: Failed to convert schema object CN=ms-DS-Device,CN=Schema,CN=Configuration,DC=domain,DC=name into ldb msg, will try during next loop debug: Failed to convert schema object CN=ms-DS-AuthN-Policy,CN=Schema,CN=Configuration,DC=domain,DC=name into ldb msg, will try during next loop debug: Failed to convert schema object CN=ms-DS-Key-Credential,CN=Schema,CN=Configuration,DC=domain,DC=name into ldb msg, will try during next loop debug: Failed to convert schema object CN=ms-DS-Shadow-Principal,CN=Schema,CN=Configuration,DC=domain,DC=name into ldb msg, will try during next loop debug: Failed to convert schema object CN=ms-Exch-Mailbox-Recipient-Template,CN=Schema,CN=Configuration,DC=domain,DC=name into ldb msg, will try during next loop |
– |
Данные отладочные сообщения формируются функцией |
4 |
../../source4/dsdb/common/util.c:4621: WARNING: domainFunctionality not setup |
– |
В случае операции |
1 |
Failed to find our own NTDS Settings options in the ldb! |
– |
В случае операции |
5 |
dsdb_find_nc_root: Finding a valid 'namingContexts' element in the RootDSE failed. Using a temporary list. |
– |
В случае операции |
4 |
Replicated 475 objects (775 linked attributes) for CN=Configuration,DC=domain,DC=name Partition[CN=Configuration,DC=domain,DC=name] objects[4096/10600] linked_values[2054/1959] Remote server advised us of a new partition CN=Schema,CN=Configuration,DC=domain,DC=name while processing CN=Configuration,DC=domain,DC=name, ignoring dsdb_replicated_objects_convert: Ignoring object outside partition 5ffd33d5-91d0-494f-9e09-0a1d7c2ce4f1 CN=Schema,CN=Configuration,DC=domain,DC=name: WERR_DS_ADD_REPLICA_INHIBITED dsdb_replicated_objects_convert: Processed 620 DRS objects, saw 621 objects and expected 621 objects |
– |
В случае операции |
2 |
Badly formatted SDDL ' (A;;RPWPCRCCDCLCLORCWOWDSDDTSW;;;DA)(A;;RPLCLORC;;;AU)' sddl_decode: could not decode 'O:BAG:BAD: (A;;RPWPCRCCDCLCLORCWOWDSDDTSW;;;DA)(A;;RPLCLORC;;;AU)' sddl_decode: ^ sddl_decode: error 'expected '[OGDS]:' section start (or the previous section ended prematurely)' descriptor_prepare_commit: changes: num_processed=181 descriptor_prepare_commit: objects: num_processed=8322 |
– |
Сообщение указывает на ошибку оформления дескриптора безопасности объекта. |
1 |
replmd_process_backlink: Failed to find target DN for linked attribute with GUID b1e8eccc-2a72-4281-b390-fbb6b4b51ff6 replmd_process_backlink: Please run 'samba-tool dbcheck' to resolve any missing backlinks. |
– |
В контексте первичной репликации в рамках операции Чтобы убедиться в корректности обработки объекта, после выполнения операции |
1 |
Unknown target CN=krbtgt_31943\0ADEL:a4f7a39d-dc7c-4c17-8e88-15e3ab725cca,CN=Deleted Objects,DC=child,DC=domain,DC=name linked from CN=LDCC11\0ADEL:6b1d9921-aa5d-4ecd-9edd-9c0ce0b10648,CN=Deleted Objects,DC=child,DC=domain,DC=name |
– |
В контексте первичной репликации в рамках операции replmd_check_target_exists: Ignoring link from CN=..., because it points to deleted object in another domain |
0 |
Failed to commit objects: WERR_DS_DRA_RECYCLED_TARGET Partition[DC=child,DC=domain,DC=name] objects[1723/29950] linked_values[80/2039] |
– |
В случае операции |
3 |
Discarding older DRS linked attribute update to msDS-NeverRevealGroup on CN=LDCC15\0ADEL:8477ef44-8509-4ce9-9867-26f57c11c3e2,CN=Deleted Objects,DC=child,DC=domain,DC=name from 33261aea-400b-4dc8-b447-fb77cf6e446f |
– |
В случае операции |
0 |
dsdb_replicated_objects_convert: Ignoring object outside partition 5b71ee81-5294-4fc3-9130-bf5c6256cac0 DC=DomainDnsZones,DC=child,DC=domain,DC=name: WERR_DS_ADD_REPLICA_INHIBITED |
– |
В случае операции |
3 |
resolve_lmhosts: Attempting lmhosts lookup for name _ldap._tcp.domain.name<0x0> resolve_lmhosts: Attempting lmhosts lookup for name _ldap._tcp.domain.name<0x0> startlmhosts: Can't open lmhosts file /app/inno-samba/etc/lmhosts. Error was No such file or directory |
– |
В случае операции |