Управление доверительными отношениями
Эллес предоставляет инструменты для установления и администрирования доверительных отношений между доменами и лесами в сетях c контроллерами домена Эллес и Microsoft Active Directory Domain Services (AD DS).
Общие сведения
Элементы сети (пользователи, компьютеры, устройства) могут быть организованы в иерархическую логическую структуру, состоящую из нескольких уровней:
- 
домен — логическое объединение пользователей, компьютеров, групп и других объектов, использующих общую копию базы данных каталога;
 - 
дерево доменов — иерархическая структура из одного или нескольких доменов, связанных общим корневым доменом, образующих единое пространство имен DNS и использующих общую схему и конфигурацию каталога;
 - 
лес доменов — одно или несколько деревьев доменов, которые используют общую схему каталога, конфигурацию и глобальный каталог.
 
Для обеспечения безопасного доступа к ресурсам с помощью механизмов аутентификации и авторизации между элементами сети устанавливаются доверительные отношения.
Доверительное отношение — логическая связь между двумя доменами, в рамках которой пользователи и другие объекты в одном домене могут получать доступ к ресурсам в другом домене.
Сторонами доверительного отношения являются:
- 
доверяющий домен — предоставляет доступ к своим ресурсам пользователям из другого домена, доверяя ему процесс аутентификации;
 - 
доверенный домен — выполняет аутентификацию своих пользователей при запросе ими доступа к ресурсам в другом домене.
 
Направление доверительного отношения
Направление доверительного отношения определяет направление потока аутентификации между двумя доменами:
- 
одностороннее доверительное отношение:
- 
входящее — только один из двух связанных доверительным отношением доменов может выполнять аутентификацию пользователей из другого домена;
Например, при установлении одностороннего входящего доверительного отношения между доменами А и Б домен А может выполнять аутентификацию пользователей из домена Б, но не наоборот.
 - 
исходящее — только один из двух связанных доверительным отношением доменов может выполнять аутентификацию пользователей своего домена в другом домене;
Например, при установлении одностороннего исходящего доверительного отношения между доменами А и Б домен Б может выполнять аутентификацию пользователей из своего домена в домен А, но не наоборот.
 
Рис. 1. Одностороннее доверительное отношение - 
 - 
двустороннее доверительное отношение — оба связанных доверительным отношением домена могут выполнять аутентификацию пользователя из другого домена.
Например, при установлении двустороннего доверительного отношения между доменами А и Б домен А может выполнять аутентификацию пользователей из домена Б и наоборот.
Рис. 2. Двустороннее доверительное отношение 
Транзитивность доверительного отношения
Транзитивность доверительного отношения определяет, распространяется ли доверие между двумя доменами на другие домены, связанные с ними:
- 
если между доменами А и Б установлено транзитивное доверительное отношение, а домены Б и В связаны транзитивным доверительным отношением, то в этом случае между доменами А и В существует неявное транзитивное доверительное отношение;
Рис. 3. Транзитивное доверительное отношение - 
если между доменами А и Б установлено нетранзитивное доверительное отношение, а домены Б и В связаны нетранзитивным или транзитивным доверительным отношением, то в этом случае между доменами А и В не существует ни нетранзитивного, ни транзитивного доверительного отношения.
Рис. 4. Нетранзитивное доверительное отношение 
Уровень проверки подлинности в рамках доверительного отношения
В рамках доверительного отношения могут выполняться следующие виды проверки подлинности:
- 
проверка подлинности в лесу/домене: Эллес автоматически проверяет подлинность пользователей указанного леса/домена для всех ресурсов локального леса/домена;
 - 
выборочная проверка подлинности: Эллес не выполняет автоматическую проверку подлинности пользователей указанного леса при получении доступа к любым ресурсам в локальном лесу; пользователям предоставляется индивидуальный доступ.
 
Суффиксы маршрутизируемых имен
Суффиксы маршрутизируемых имен определяют, какие суффиксы DNS-имен могут использоваться для маршрутизации запросов на аутентификацию между доверенными доменами.
Поддержка другим доменом шифрования Kerberos AES
Для обеспечения совместимости с контроллерами домена на ОС Windows Server в рамках доверительного отношения может быть установлен флаг, указывающий на поддержку другим доменом алгоритмов шифрования Kerberos AES.
Независимо от того, установлен этот флаг или нет, TGT-билеты доверенного домена генерируются с шифрованием AES.
Управление делегированием TGT
Для настройки неограниченного делегирования Kerberos между доверенными лесами в рамках доверительного отношения может быть разрешено делегирование билетов TGT (Ticket-Granting Ticket).
Сброс и установка пароля
Поддерживается возможность сброса и установки пароля доверительного отношения.
Типы доверительных отношений
В Табл. 1 перечисляются типы доверительных отношений, с которыми может работать Эллес, с описанием их свойств.
В таблице описываются только те типы доверительных отношений, которые могут создаваться и редактироваться с помощью утилиты samba-tool. Доверительные отношения типов «родитель-потомок» (Parent-Child) и «дерево-корень» (Tree-Root) создаются автоматически при добавлении в лес нового домена (см.
«Добавление подчиненного домена»).
 | 
Тип →  | 
Кратчайшее  | 
Внешнее  | 
Между лесами  | 
Realm  | 
|---|---|---|---|---|
Свойство  | 
||||
Транзитивность  | 
Создание: всегда транзитивное Редактирование: нередактируемое  | 
Создание: всегда нетранзитивное Редактирование: нередактируемое  | 
Создание: всегда транзитивное Редактирование: нередактируемое  | 
Создание: 
 Редактирование: редактируемое  | 
Направление  | 
Создание: 
 Редактирование: редактируемое  | 
Создание: 
 Редактирование: редактируемое  | 
Создание: 
 Редактирование: редактируемое  | 
Создание: 
 Редактирование: редактируемое  | 
Уровень проверки подлинности  | 
Создание: неприменимо Редактирование: нередактируемое  | 
Создание: 
 Редактирование: редактируемое  | 
Создание: 
 Редактирование: редактируемое  | 
Создание: неприменимо Редактирование: неприменимо  | 
Суффиксы маршрутизируемых имен  | 
Создание: неприменимо Редактирование: неприменимо  | 
Создание: неприменимо Редактирование: неприменимо  | 
Для каждого доверительного отношения список суффиксов формируется автоматически. Пользователь имеет возможность активировать и деактивировать суффиксы из существующего списка, а также формировать дополнительный список суффиксов, исключаемых из маршрутизации через данное доверительное отношение. Имена суффиксов в дополнительном списке должны принадлежать пространству имен доверенного леса  | 
Создание: неприменимо Редактирование: неприменимо  | 
Поддержка другим доменом шифрования Kerberos AES  | 
Создание: неприменимо Редактирование: неприменимо  | 
Создание: поддерживается Редактирование: редактируемое  | 
Создание: поддерживается Редактирование: редактируемое  | 
Создание: поддерживается Редактирование: редактируемое  | 
Управление делегированием TGT  | 
Поддерживается  | 
Поддерживается  | 
Поддерживается  | 
Поддерживается  | 
Сброс и установка пароля  | 
Поддерживается  | 
Поддерживается  | 
Поддерживается  | 
Поддерживается  | 
На Рис. 5 приводится схема доверительных отношений различных типов между доменами внутри леса и между лесами доменов.
Процесс настройки доверительных отношений с использованием inno-samba
В общем случае процесс настройки доверительного отношения между доменами состоит из следующих шагов:
- 
Подготовка окружения:
- 
формирование доменов:
- 
создание нового домена с использованием пакета inno-samba (см. «Создание первого домена в лесу»);
 - 
присоединения сервера к домену в роли контроллера домена с использованием пакета inno-samba (см. «Присоединение к домену в роли контроллера домена»);
 
 - 
 
 - 
 - 
Установление доверительных отношений между доменами в соответствии с логической структурой сети:
- 
выбор типа и параметров доверительного отношения;
 - 
создание доверительных отношений (см. «Установление доверительного отношения»).
 
 - 
 - 
Проверка работоспособности установленных доверительных отношений (см. «Проверка корректности настройки доверительного отношения»).
 - 
Назначение пользователей и групп из доверенных доменов в группы в доверяющих доменах (см. «Добавление в группу участников»).
 
Предварительная настройка
Для корректной работы доверительного отношения необходимо обеспечить разрешение имен между участвующими в нем доменами, а также корректную работу аутентификации Kerberos.
При работе с Эллес для обеспечения разрешения имен рекомендуется использовать возможности DNS-сервера BIND 9. Например, с помощью него может быть настроено условное перенаправление запросов (conditional forwarding) между зонами DNS, используемыми доменами-участниками.
При установлении доверительного отношения с доменом на ОС Windows Server в этом случае необходимо добавить сервер DNS домена Эллес в качестве сервера условной пересылки (conditional forwarder) в настройках сервера DNS домена AD DS (см., например, описание соответствующей команды PowerShell в документации Microsoft).
Для настройки перенаправления запросов DNS и корректной работы аутентификации Kerberos перед установлением доверительного отношения между доменами A и B:
- 
На контроллере с развернутым DNS-сервером BIND 9 в домене A (dc-a) добавьте, например, в конфигурационный файл /etc/bind/named.conf.local описание зоны для домена B с указанием IP-адреса обслуживающего ее DNS-сервера в формате:
zone "b-domain.name" { type forward; forwarders { <b-NS-IP>; }; forward only; }; - 
На контроллере домена с развернутым DNS-сервером BIND 9 в домене B (dc-b) добавьте, например, в конфигурационный файл /etc/bind/named.conf.local описание зоны для домена A с указанием IP-адреса обслуживающего ее DNS-сервера в формате:
zone "a-domain.name" { type forward; forwarders { <a-NS-IP>; }; forward only; }; - 
Если не используется DNSSEC, убедитесь, что в общей конфигурации DNS-серверов BIND 9 в файле /etc/bind/named.conf.options отключена проверка подписания зон DNS:
options { [...] dnssec-validation no; }; - 
Для применения изменений в конфигурации зон перезапустите службу
bind9на обоих контроллерах домена:sudo systemctl restart bind9.service
 - 
Для проверки настройки переадресации убедитесь, что на контроллерах в обоих доменах корректно разрешаются записи SRV:
- 
на контроллере в домене A (dc-a) запросите SRV-запись для службы Kerberos:
host -t SRV _kerberos._tcp.b-domain.name _kerberos._tcp.b-domain.name has SRV record 0 100 88 dc-b.b-domain.name.
host -t SRV _kerberos._tcp.a-domain.name _kerberos._tcp.a-domain.name has SRV record 0 100 88 dc-a.a-domain.name.
 - 
на контроллере в домене B (dc-b) запросите SRV-запись для службы Kerberos:
host -t SRV _kerberos._tcp.a-domain.name _kerberos._tcp.a-domain.name has SRV record 0 100 88 dc-a.domain.name.
host -t SRV _kerberos._tcp.b-domain.name _kerberos._tcp.b-domain.name has SRV record 0 100 88 dc-b.domain.name.
 
 - 
 - 
Добавьте область безопасности (realm) и IP-адрес или полное доменное имя KDC доверяющего/доверяемого домена в конфигурацию Kerberos (файл /etc/krb5.conf) на контроллерах домена Эллес, которые будут участвовать в установлении доверительного отношения.
Пример содержимого файла krb5.conf на контроллере в домене A (dc-a):
[libdefaults] default_realm = A-DOMAIN.NAME dns_lookup_realm = false dns_lookup_kdc = true [realms] A-DOMAIN.NAME = { default_domain = A-DOMAIN.NAME kdc = <a-KDC-IP> admin_server = <a-KDC-IP> } B-DOMAIN.NAME = { default_domain = B-DOMAIN.NAME kdc = <b-KDC-IP> admin_server = <b-KDC-IP> } [domain_realm] dc-a.a-domain.name = A-DOMAIN.NAME dc-b.b-domain.name = B-DOMAIN.NAMEПример содержимого файла krb5.conf на контроллере в домене B (dc-b):
[libdefaults] default_realm = B-DOMAIN.NAME dns_lookup_realm = false dns_lookup_kdc = true [realms] A-DOMAIN.NAME = { default_domain = A-DOMAIN.NAME kdc = <a-KDC-IP> admin_server = <a-KDC-IP> } B-DOMAIN.NAME = { default_domain = B-DOMAIN.NAME kdc = <b-KDC-IP> admin_server = <b-KDC-IP> } [domain_realm] dc-a.a-domain.name = A-DOMAIN.NAME dc-b.b-domain.name = B-DOMAIN.NAME - 
Для проверки корректности работы аутентификации Kerberos:
- 
на контроллере в домене A (dc-a) запросите билет для пользователя в домене B:
kinit Administrator@B-DOMAIN.NAME
 - 
на контроллере в домене B (dc-b) запросите билет для пользователя в домене A:
kinit Administrator@A-DOMAIN.NAME
 
Убедитесь, что билеты получены, с помощью стандартной команды
klist. - 
 
После удаления доверительного отношения между доменами A и B удалите соответствующие зоны из конфигурационных файлов на контроллерах с развернутыми DNS-серверами BIND 9 и перезагрузите сервис bind9, а также приведите в исходное состояние конфигурации Kerberos.
Операции
Для работы с доверительными отношениями с помощью утилиты samba-tool используется группа подкоманд trust.
Установление доверительного отношения
Формат вызова:
samba-tool domain trust create <domain> [options]
Команда выполняется на контроллере в доверяющем домене. При вызове указывается полное имя (FQDN) или NetBIOS-имя доверенного домена.
Подкоманда создает доверительное отношение между доменом, к которому относится текущий контроллер (доверяющий домен), и указанным доверенным доменом в соответствии с переданными параметрами.
По умолчанию в процессе выполнения команды автоматически генерируется пароль для доверительного отношения.
При создании доверительного отношения только в текущем домене (при использовании дополнительного параметра --create-location=local) предусмотрен интерактивный ввод пароля администратором домена. В дальнейшем введенный пароль может использоваться для настройки доверительного отношения в доверенном домене.
По умолчанию после создания выполняется автоматическая проверка доверительного отношения. Она может быть отключена с помощью дополнительного параметра --skip-validation.
| Перед установлением доверительного отношения требуется настроить условное перенаправление запросов (conditional forwarding) для зон DNS, используемых в доменах-участниках (см. «Предварительная настройка»). | 
Параметры
Параметры вызова:
- 
--type=TYPE— тип доверительного отношения; возможные значения:- 
external(по умолчанию) — внешнее доверительное отношение, устанавливаемое напрямую между доменами в разных лесах; - 
forest— доверительное отношение между корневыми доменами разных лесов; - 
shortcut— доверительное отношение между подчиненными доменами в одном лесу; - 
realm— доверительное отношение с областью MIT Kerberos;Доверительное отношение типа Realm может быть установлено как с корневым доменом, так и напрямую с дочерним доменом в лесу на базе Microsoft AD DS.  
 - 
 - 
--direction=DIRECTION— направление доверия; возможные значения:- 
incoming— входящее: пользователи текущего домена (доверенный домен) могут проходить аутентификацию в другом домене (доверяющий домен), с которым устанавливается доверительное отношение, и получать доступ к его ресурсам; - 
outgoing— исходящее: пользователи другого домена (доверенный домен), с которым устанавливается доверительно отношение, могут проходить аутентификацию в текущем домене (доверяющий домен) и получать доступ к его ресурсам; - 
both(по умолчанию) — оба направления; 
 - 
 - 
--create-location=LOCATION— место создания объекта доверенного домена (trusted domain object, TDO); возможные значения:- 
local— объект создается только в текущем домене; - 
both(по умолчанию) — объект создается в обоих доменах; 
 - 
 - 
--cross-organisation— признак использование выборочной проверки подлинности (по умолчанию не установлен); - 
--quarantined=yes|no— признак необходимости применения в рамках доверительного отношения специальных правил фильтрации SID (механизм SID Filtering); возможные значения:- 
yes— механизм SID Filtering включен (по умолчанию, если--type=external); - 
no— механизм SID Filtering выключен (по умолчанию, если--type=forest,--type=shortcutили--type=realm); 
 - 
 - 
--no-tgt-delegation— признак запрета неограниченного (unconstrained) делегирования для билетов Kerberos, сформированных в ответ на запросы из другого леса в рамках доверительного отношения между лесами (используется совместно с--type=forest; по умолчанию не установлен);Параметр игнорируется. При установлении доверительного отношения неограниченное делегирование по умолчанию запрещено. Чтобы разрешить, используйте параметр --tgt-delegation=yesподкомандыsamba-tool domain trust modify. - 
--not-transitive— признак нетранзитивного доверительного отношения между лесами (используется совместно с--type=forestили--type=realm; по умолчанию не установлен); - 
--treat-as-external— признак включения атрибутаsIDHistory(по умолчанию не установлен); - 
--no-aes-keys— признак того, что в рамках доверия не используются ключи Kerberos с шифрованием AES (по умолчанию не установлен); - 
--skip-validation— отключение проверки корректности настройки доверительного отношения (по умолчанию не установлен). 
Примеры
Пример создания транзитивного двустороннего доверия типа forest между доменом SAMDOM.COM (доверяющий домен) и EXAMPLE.COM (доверенный домен) на контроллере домена dc01.samdom.com:
samba-tool domain trust create EXAMPLE.COM \ --type=forest \ --direction=both \ --create-location=both \ -U Administrator@EXAMPLE.COM LocalDomain Netbios[SAMDOM] DNS[samdom.com] SID[S-1-5-21-1139115827-1039086355-3251559409] RemoteDC Netbios[DC02] DNS[dc02.example.com] ServerType[PDC,GC,LDAP,DS,KDC,TIMESERV,CLOSEST,WRITABLE,GOOD_TIMESERV,FULL_SECRET_DOMAIN_6,DS_8,DS_9,DS_10] Password for [Administrator@EXAMPLE.COM]: RemoteDomain Netbios[EXAMPLE] DNS[example.com] SID[S-1-5-21-3134998938-619743855-3616620706] Creating remote TDO. Remote TDO created. Setting supported encryption types on remote TDO. Creating local TDO. Local TDO created Setting supported encryption types on local TDO. Setup local forest trust information... Validating outgoing trust... OK: LocalValidation: DC[\\dc02.example.com] CONNECTION[WERR_OK] TRUST[WERR_OK] VERIFY_STATUS_RETURNED Validating incoming trust... OK: RemoteValidation: DC[\\dc01.samdom.com] CONNECTION[WERR_OK] TRUST[WERR_OK] VERIFY_STATUS_RETURNED Success
Пример создания междоменного двустороннего доверия типа external между доменом SAMDOM.COM (доверяющий домен) и EXAMPLE.COM (доверенный домен) на контроллере домена dc01.samdom.com:
samba-tool domain trust create EXAMPLE.COM \ --type=external \ --direction=both \ --create-location=both \ -U Administrator@EXAMPLE.COM
Пример создания доверительного отношения с выключением механизма SID Filtering и включением атрибута sIDHistory:
samba-tool domain trust create EXAMPLE.COM \ --type=external \ --direction=both \ --create-location=both \ --quarantined=no \ --treat-as-external \ -U Administrator@EXAMPLE.COM
Пример создания одностороннего исходящего доверительного отношения типа shortcut между двумя дочерними доменами (CHILDA.SAMDOM.COM и CHILDB.SAMDOM.COM в примере; подкоманда выполняется на контроллере Эллес в дочернем домене CHILDA.SAMDOM.COM):
samba-tool domain trust create CHILDB.SAMDOM.COM \ --type=shortcut \ --direction=outgoing \ --create-location=both \ -U Administrator@CHILDB.SAMDOM.COM
Пример создания одностороннего исходящего доверительного отношения типа realm между доменом Эллес (SAMDOM.COM) и областью MIT Kerberos (REALM.COM) на контроллере домена dc01.samdom.com:
samba-tool domain trust create REALM.COM \ --type=realm \ --direction=outgoing \ --create-location=both \ -U Administrator@REALM.COM
Изменение атрибутов доверительного отношения
Формат вызова:
samba-tool domain trust modify <domain> [options]
Команда выполняется на контроллере в доверяющем домене. При вызове указывается полное имя (FQDN) или NetBIOS-имя доверенного домена.
Подкоманда изменяет атрибуты доверительного отношения между текущим доменом (доверяющий домен) и указанным доверенным доменом в соответствии с переданными параметрами.
По умолчанию изменения вносятся в объекты доверенного домена в обоих доменах. Для внесения изменений только в локальном домене может использоваться дополнительный параметр --modify-location=local.
Параметры
Параметры вызова:
- 
--quarantined=yes|no— признак необходимости применения в рамках доверительного отношения специальных правил фильтрации SID (механизм SID Filtering); возможные значения:- 
yes— механизм SID Filtering включен; - 
no— механизм SID Filtering выключен; 
 - 
 - 
--treat-as-external=yes|no— признак включения атрибутаsIDHistory; возможные значения:- 
yes— атрибут включен; - 
no— атрибут выключен; 
 - 
 - 
--tgt-delegation=yes|no— признак разрешения неограниченного (unconstrained) делегирования для билетов Kerberos, сформированных в ответ на запросы из другого леса в рамках доверительного отношения между лесами; возможные значения:- 
yes— неограниченное делегирование разрешено; - 
no— неограниченное делегирование запрещено; 
 - 
 - 
--cross-organization=yes|no— признак использование выборочной проверки подлинности; возможные значения:- 
yes— выборочная проверка подлинности включена; - 
no— выборочная проверка подлинности выключена; 
 - 
 - 
--direction=DIRECTION— направление доверия; возможные значения:- 
incoming— входящее: пользователи текущего домена (доверенный домен) могут проходить аутентификацию в другом домене (доверяющий домен), с которым устанавливается доверительное отношение, и получать доступ к его ресурсам; - 
outgoing— исходящее: пользователи другого домена (доверенный домен), с которым устанавливается доверительно отношение, могут проходить аутентификацию в текущем домене (доверяющий домен) и получать доступ к его ресурсам; - 
both— оба направления; 
 - 
 - 
--modify-location=LOCATION— место изменения объекта доверенного домена (trusted domain object, TDO); возможные значения:- 
local— объект изменяется только в текущем домене; - 
both(по умолчанию) — объект изменяется в обоих доменах; 
 - 
 - 
--use-aes-keys— признак использования ключей Kerberos с шифрованием AES в рамках доверительного отношения; - 
--no-aes-keys— признак того, что в рамках доверительного отношения не используются ключи Kerberos с шифрованием AES; - 
--raw-kerb-enctypes— алгоритмы шифрования, поддерживаемые Kerberos в рамках доверительного отношения (в качестве значения ожидается значение для атрибутаmsDS-SupportedEncryptionTypesобъекта TDO в десятичном или шестнадцатеричном формате). 
Примеры
Пример включения неограниченного делегирования Kerberos в рамках доверительного отношения:
samba-tool domain trust modify EXAMPLE.COM --tgt-delegation=yes \ -U Administrator@EXAMPLE.COM LocalDomain Netbios[SAMDOM] DNS[samdom.com] SID[S-1-5-21-1139115827-1039086355-3251559409] Changing trust attrs from 0x4 to 0x804
Пример изменения направления доверительного отношения:
samba-tool domain trust modify EXAMPLE.COM --direction=outgoing \ -U Administrator@EXAMPLE.COM LocalDomain Netbios[SAMDOM] DNS[samdom.com] SID[S-1-5-21-1139115827-1039086355-3251559409] Modifying trust direction between samdom.com and example.com... RemoteDC Netbios[DC02] DNS[dc02.example.com] ServerType[PDC,GC,LDAP,DS,KDC,TIMESERV,CLOSEST,WRITABLE,GOOD_TIMESERV,FULL_SECRET_DOMAIN_6,DS_8,DS_9,DS_10] Password for [Administrator@EXAMPLE.COM]: RemoteDomain Netbios[EXAMPLE] DNS[example.com] SID[S-1-5-21-3134998938-619743855-3616620706] RemoteTDO Netbios[SAMDOM] DNS[samdom.com] SID[S-1-5-21-1139115827-1039086355-3251559409] Trust direction updated successfully.
Пример включения механизма SID Filtering в рамках доверительного отношения:
samba-tool domain trust modify EXAMPLE.COM --quarantined=yes \ -U Administrator@EXAMPLE.COM LocalDomain Netbios[SAMDOM] DNS[samdom.com] SID[S-1-5-21-1139115827-1039086355-3251559409] Changing trust attrs from 0x800 to 0x804
Пример выключение атрибута sIDHistory в рамках доверительного отношения:
samba-tool domain trust modify EXAMPLE.COM --treat-as-external=no \ -U Administrator@EXAMPLE.COM LocalDomain Netbios[SAMDOM] DNS[samdom.com] SID[S-1-5-21-1139115827-1039086355-3251559409] Changing trust attrs from 0x804 to 0x844
Пример отключения использования ключей Kerberos с шифрованием AES в рамках доверительного отношения:
samba-tool domain trust modify EXAMPLE.COM --no-aes-keys \ -U Administrator@EXAMPLE.COM LocalDomain Netbios[SAMDOM] DNS[samdom.com] SID[S-1-5-21-1139115827-1039086355-3251559409] Old kerb_EncTypes: 0x18 (AES128_CTS_HMAC_SHA1_96,AES256_CTS_HMAC_SHA1_96) New kerb_EncTypes: 0x4 (RC4_HMAC_MD5)
Пример включения использования ключей Kerberos с шифрованием AES в рамках доверительного отношения:
samba-tool domain trust modify EXAMPLE.COM --use-aes-keys \ -U Administrator@EXAMPLE.COM LocalDomain Netbios[SAMDOM] DNS[samdom.com] SID[S-1-5-21-1139115827-1039086355-3251559409] Old kerb_EncTypes: 0x4 (RC4_HMAC_MD5) New kerb_EncTypes: 0x18 (AES128_CTS_HMAC_SHA1_96,AES256_CTS_HMAC_SHA1_96)
Пример явного задания типов шифрования Kerberos в рамках доверительного отношения:
samba-tool domain trust modify EXAMPLE.COM --raw-kerb-enctypes 4 \ -U Administrator@EXAMPLE.COM LocalDomain Netbios[SAMDOM] DNS[samdom.com] SID[S-1-5-21-1139115827-1039086355-3251559409] Old kerb_EncTypes: 0x12 (DES_CBC_MD5,AES256_CTS_HMAC_SHA1_96) New kerb_EncTypes: 0x4 (RC4_HMAC_MD5)
Сброс и установка пароля доверительного отношения
Формат вызова:
samba-tool domain trust reset <domain> [options]
При вызове подкоманды указывается полное имя (FQDN) или NetBIOS-имя доверенного домена.
Подкоманда позволяет сбросить существующий и установить новый пароль для доверительного отношения между текущим доменом (доверяющий домен) и указанным доверенным доменом в соответствии с переданными параметрами.
По умолчанию пароль сбрасывается в обоих доменах. В процессе выполнения команды автоматически генерируется новый пароль.
При сбросе пароля только в текущем домене (при использовании дополнительного параметра --reset-location=local) предусмотрен интерактивный ввод пароля администратором домена. В дальнейшем введенный пароль может использоваться для настройки доверительного отношения в доверенном домене.
По умолчанию после сброса пароля выполняется автоматическая проверка доверительного отношения между доменами. Она может быть отключена с помощью дополнительного параметра --skip-validation.
Параметры
Параметры вызова:
- 
--reset-location=LOCATION— место удаления объекта доверенного домена; возможные значения:- 
local— сброс пароля только в локальном домене; - 
both(по умолчанию) — сброс пароля в локальном и доверенном доменах; 
 - 
 - 
--skip-validation— отключение проверки корректности настройки доверительного отношения. 
Примеры
Пример сброса пароля для доверительного отношения между доменами SAMDOM.COM и EXAMPLE.COM на контроллере домена dc01.samdom.com:
samba-tool domain trust reset EXAMPLE.COM \ --reset-location=local \ --skip-validation LocalDomain Netbios[SAMDOM] DNS[samdom.com] SID[S-1-5-21-1139115827-1039086355-3251559409] LocalTDO Netbios[EXAMPLE] DNS[example.com] SID[S-1-5-21-3134998938-6197438556-3616620706] New Incoming Trust Password: Retype Incoming Trust Password: New Outgoing Trust Password: Retype Outgoing Trust Password: Reset trust passwords between samdom.com and example.com... The trust between samdom.com and example.com was successfully reset.
Удаление доверительного отношения
Формат вызова:
samba-tool domain trust delete <domain> [options]
При вызове подкоманды указывается полное имя (FQDN) или NetBIOS-имя доверенного домена.
Подкоманда удаляет доверительное отношение между текущим доменом (доверяющий домен) и указанным доверенным доменом в соответствии с переданными параметрами.
По умолчанию объекты доверенного домена удаляются в обоих доменах. Для удаления только в локальном домене может использоваться дополнительный параметр --delete-location=local.
| После удаления доверительного отношения требуется удалить настройки для условного перенаправления запросов (conditional forwarding) для зон DNS, используемых в доменах-участниках (см. «Предварительная настройка»). | 
Параметры
Параметры вызова:
- 
--delete-location=LOCATION— место удаления объекта доверенного домена; возможные значения:- 
local— удаление только в локальном домене; - 
both(по умолчанию) — удаление в локальном и доверенном доменах. 
 - 
 
Примеры
Пример удаления доверительного отношения между доменами SAMDOM.COM и EXAMPLE.COM на контроллере домена dc01.samdom.com:
samba-tool domain trust delete EXAMPLE.COM \ -U Administrator@EXAMPLE.COM LocalDomain Netbios[SAMDOM] DNS[samdom.com] SID[S-1-5-21-1139115827-1039086355-3251559409] RemoteDC Netbios[DC02] DNS[dc02.example.com] ServerType[PDC,GC,LDAP,DS,KDC,TIMESERV,CLOSEST,WRITABLE,GOOD_TIMESERV,FULL_SECRET_DOMAIN_6,DS_8,DS_9,DS_10] Password for [Administrator@EXAMPLE.COM]: RemoteDomain Netbios[EXAMPLE] DNS[example.com] SID[S-1-5-21-3134998938-619743855-3616620706] RemoteTDO deleted.
Получение списка доверительных отношений
Формат вызова:
samba-tool domain trust list [options]
Подкоманда выводит список доверительных отношений, установленных для текущего домена.
Для каждого доверительного отношения выводится следующая информация:
- 
тип доверия — внешнее (
external) или между лесами (forest); - 
признак транзитивности — транзитивное (
yes) или нетранзитивное (no); - 
направление доверия — входящее (
incoming), исходящее (outgoing) или оба (both); - 
имя доверенного домена (корневого домена леса).
 
Примеры
Пример получения списка доверительных отношений:
samba-tool domain trust list Type[Forest] Transitive[Yes] Direction[BOTH] Name[example.com] Type[Child] Transitive[Yes] Direction[BOTH] Name[child.samdom.com] Type[TreeRoot] Transitive[Yes] Direction[BOTH] Name[domsam.com] Type[Realm] Transitive[Yes] Direction[BOTH] Name[realm.com]
Получение информации о доверенном домене
Формат вызова:
samba-tool domain trust show <domain> [options]
При вызове подкоманды указывается полное имя (FQDN) или NetBIOS-имя доверенного домена.
Подкоманда выводит информацию о доверительном отношении с указанным доменом (атрибуты объекта доверенного домена — TDO).
Примеры
Пример вывода информации о доверительном отношении с доменом EXAMPLE.COM:
samba-tool domain trust show EXAMPLE.COM LocalDomain Netbios[SAMDOM] DNS[samdom.com] SID[S-1-5-21-1139115827-1039086355-3251559409] TrustedDomain: NetbiosName: EXAMPLE DnsName: example.com SID: S-1-5-21-3134998938-6197438556-3616620706 Type: 0x2 (UPLEVEL) Direction: 0x3 (BOTH) Attributes: 0x8 (FOREST_TRANSITIVE) PosixOffset: 0x00000000 (0) kerb_EncTypes: 0x18 (AES128_CTS_HMAC_SHA1_96,AES256_CTS_HMAC_SHA1_96)
Проверка корректности настройки доверительного отношения
Формат вызова:
samba-tool domain trust validate <domain> [options]
При вызове подкоманды указывается полное имя (FQDN) или NetBIOS-имя доверенного домена.
Подкоманда выполняет проверку корректности настройки доверительного отношения с указанным доменом.
По умолчанию проверка выполняется в обоих доменах — участниках доверительного отношения. Для выполнения проверки только в локальном домене может использоваться дополнительный параметр --validate-location=locatl.
Параметры
Параметры вызова:
- 
--validate-location=LOCATION— место выполнения проверки объекта доверенного домена (TDO); возможные значения:- 
local— проверка только в локальном домене; - 
both(по умолчанию) — проверка в локальном и доверенном доменах. 
 - 
 
Примеры
Пример проверки доверительного отношения с доменом EXAMPLE.COM:
samba-tool domain trust validate EXAMPLE.COM \ -U Administrator@EXAMPLE.COM LocalDomain Netbios[SAMDOM] DNS[samdom.com] SID[S-1-5-21-1139115827-1039086355-3251559409] LocalTDO Netbios[EXAMPLE] DNS[example.com] SID[S-1-5-21-3134998938-6197438556-3616620706] OK: LocalValidation: DC[\\dc02.example.com] CONNECTION[WERR_OK] TRUST[WERR_OK] VERIFY_STATUS_RETURNED OK: LocalRediscover: DC[\\dc02.example.com] CONNECTION[WERR_OK] RemoteDC Netbios[DC02] DNS[dc02.example.com] ServerType[PDC,GC,LDAP,DS,KDC,TIMESERV,CLOSEST,WRITABLE,GOOD_TIMESERV,FULL_SECRET_DOMAIN_6,DS_8,DS_9,DS_10] Password for [Administrator@EXAMPLE.COM]: OK: RemoteValidation: DC[\\dc01.samdom.com] CONNECTION[WERR_OK] TRUST[WERR_OK] VERIFY_STATUS_RETURNED OK: RemoteRediscover: DC[\\dc01.samdom.com] CONNECTION[WERR_OK]
Управление информацией о доверенном домене в рамках доверительных отношений между лесами
Формат вызова:
samba-tool domain trust namespaces [DOMAIN] [options]
Подкоманда позволяет изменять атрибуты локального (доверяющего) и доверенного домена в рамках доверительного отношения типа forest в соответствии с переданными параметрами.
Параметры
Параметры вызова:
- 
--refresh=check|store— вывод/сохранение обновленной информации о доверительном отношении; для использования опции при вызове подкоманды должно быть передано полное имя (FQDN) или NetBIOS-имя доверенного домена; - 
--enable-all— выполнение попытки перевода всех записей в информации о доверенном домене в статусEnabled(не может использоваться одновременно с--refresh=check); для использования опции при вызове подкоманды должно быть передано полное имя (FQDN) или NetBIOS-имя доверенного домена; - 
--enable-tln=DNSDOMAIN— перевод записи с указанным именем верхнего уровня (суффиксом DNS-имени) в статусEnabledв информации о доверительном отношении; для использования опции при вызове подкоманды должно быть передано полное имя (FQDN) или NetBIOS-имя доверенного домена; - 
--disable-tln=DNSDOMAIN— перевод записи с указанным именем верхнего уровня (суффиксом DNS-имени) в статусDisabledв информации о доверительном отношении; для использования опции при вызове подкоманды должно быть передано полное имя (FQDN) или NetBIOS-имя доверенного домена; - 
--add-tln-ex=DNSDOMAIN— добавление исключения для указанного имени верхнего уровня (TLN) в информацию о доверительном отношении; для использования опции при вызове подкоманды должно быть передано полное имя (FQDN) или NetBIOS-имя доверенного домена; - 
--delete-tln-ex=DNSDOMAIN— удаление исключения для указанного имени верхнего уровня (TLN) из информации о доверительном отношении; для использования опции при вызове подкоманды должно быть передано полное имя (FQDN) или NetBIOS-имя доверенного домена; - 
--enable-nb=NETBIOSDOMAIN— перевод записи с указанным NetBIOS-именем в статусEnabledв информации о доверительном отношении; для использования опции при вызове подкоманды должно быть передано полное имя (FQDN) или NetBIOS-имя доверенного домена; - 
--disable-nb=NETBIOSDOMAIN— перевод записи с указанным NetBIOS-именем в статусDisabledв информации о доверительном отношении; для использования опции при вызове подкоманды должно быть передано полное имя (FQDN) или NetBIOS-имя доверенного домена; - 
--enable-sid=DOMAINSID— перевод записи с указанным идентификатором безопасности SID в статусEnabledв информации о доверительном отношении; для использования опции при вызове подкоманды должно быть передано полное имя (FQDN) или NetBIOS-имя доверенного домена; - 
--disable-sid=DOMAINSID— перевод записи с указанным идентификатором безопасности SID в статусDisabledв информации о доверительном отношении; для использования опции при вызове подкоманды должно быть передано полное имя (FQDN) или NetBIOS-имя доверенного домена; - 
--add-upn-suffix=DNSDOMAIN— добавление нового UPN-суффикса в атрибутuPNSuffixesдля локального леса; - 
--delete-upn-suffix=DNSDOMAIN— удаление UPN-суффикса из атрибутаuPNSuffixesдля локального леса; - 
--add-spn-suffix=DNSDOMAIN— добавление SPN-суффикса в атрибутmsDS-SPNSuffixesдля локального леса; - 
--delete-spn-suffix=DNSDOMAIN— удаление SPN-суффикса из атрибутаmsDS-SPNSuffixesдля локального леса.