Samba/InterdomainTrustRelationships: различия между версиями

Материал из ALT Linux Wiki
Нет описания правки
(Полностью переписал страницу. В ближайших планах добавить инструкцию по созданию траста в Windows (для полноты статьи), и описать ряд нюансов)
Строка 1: Строка 1:
{{MovedFromFreesourceInfo|AltLinux/Dokumentacija/samba/InterdomainTrustRelationships}}
{{Stub}}
{{Crap}}


== Samba: Установка междоменных доверительных отношений ==
__TOC__


__TOC__
== Установка доверительных отношений между Windows 2012R2 и SambaDC ==


=== Исходные данные ===


=== Задача ===
* Домен Windows:
  Имя домена - WIN.DOM
  Контроллер домена - DC1.WIN.DOM
  IP address - 172.16.100.124
  ОС контроллера домена - Windows Server 2012R2
  Уровень работы домена - 2012R2


* Есть 2 домена DomA и DomB (принадлежащие разным организациям) с samba в качестве PDC.
* Домен Linux:
* Нужно обеспечить доступ некоторых пользователей одного домена к ресурсам другого, и на оборот.
  Имя домена - LIN.LOC
* Обе самбы используют LDAP (каждая -- своё дерево).
  Контроллер домена - DC2.LIN.LOC
* Корень деревьев LDAP общий.
  IP address - 172.16.100.135
* NSS/PAM используют LDAP и видят всех пользователей.
  ОС контроллера домена - Alt 9 Server
* Обе самбы настроены так (шаблон):
  Уровень работы домена - 2012_R2
  Версия Samba - 4.12.11


<pre>ldap suffix = dc=<общий корень>
Основная задача - описать процесс создания двухсторонних доверительных отношений между доменами на базе Windows AD и Samba DC. Проверить возможность входа пользователей и групп одного домена в другой и наоборот.
ldap <*> suffix = ou=<*>,dc=<домен></pre>


=== Описание решения ===
=== Настройка на стороне Windows ===


Решать данную задачу буду через доверительные отношения между доменами. Т. к. судя по документации (см. [http://us1.samba.org/samba/docs/man/Samba-HOWTO-Collection/InterdomainTrusts.html http://us1.samba.org/samba/docs/man/Samba-HOWTO-Collection/InterdomainTrusts.html]) такие отношения однонаправленные, то потребуется установить их пару.
1. Для службы DNS создать сервер условной перессылки


=== Установка доверительных отношений DomA -- > DomB ===
PS$ Add-DnsServerConditionalForwarderZone -Name lin.loc -MasterServers 172.16.100.134 -ReplicationScope Forest


Сначала настроем отношения DomA -- > DomB (отношения DomB -- > DomA настраиваются аналогично).
<div class="mw-collapsible mw-collapsed">
2. Создание двухстороннего транзитивного подключения
<div class="mw-collapsible-content">Здесь будут размещены скриншоты настройки на стороне Windows</div>
</div>


==== Действия в DomB ====
=== Настройка на стороне Linux ===


Создаём <tt>trust account</tt> (через <tt>smbldap-useradd</tt>, т. к. LDAP) и задаём пароль для него:
Предполагается, что домен уже настроен согласно [https://docs.altlinux.org/ru-RU/alt-server/9.1/html/alt-server/sambadc--chapter.html документации], и функционирует с настроенным BIND9_DLZ в качестве DNS-backend.


<pre># smbldap-useradd -i DomA
1. Создание сервера условной перессылки для службы DNS:
New password :  
Retype new password :</pre>


==== Действия в DomA ====
  vim /etc/bind/ddns.conf


Подключаем домен DomA к DomB (вводя пароль заданный на предыдущем шаге):
  Добавить в конец файла следующие строки


<pre># net rpc trustdom establish DomB
  zone "win.dom" in {
Password:
      type forward;
Could not connect to server PDCDOMB
      forwarders { 172.16.100.124; };
Trust to domain DomB established</pre>
  };


После данных действий (несмотря на диагностику) пользователи домена DomB видны PDC домена DomA.
2. Создание входящего транзитивного подключения:


=== Установка доверительных отношений DomB -- > DomA ===
  samba-tool domain trust create win.dom --type=forest --direction=both --create-location=local -Uadmin@WIN


Полностью аналогична предыдущему пункту.
  В общем случае ваш вывод должен быть примерно похож, на представленный ниже


=== Настройка разрешений ===
  LocalDomain Netbios[LIN] DNS[lin.loc] SID[S-1-5-21-1859323732-4157578351-390439025]
  RemoteDC Netbios[DC1] DNS[DC1.WIN.DOM]
  ServerType[PDC,GC,LDAP,DS,KDC,TIMESERV,CLOSEST,WRITABLE,GOOD_TIMESERV,FULL_SECRET_DOMAIN_6,ADS_WEB_SERVICE,DS_8,__unknown_00008000__]
  Password for [admin@WIN]:
  RemoteDomain Netbios[WIN] DNS[WIN.DOM] SID[S-1-5-21-534750258-3577407189-1049577339]
  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...
  Namespaces[2] TDO[WIN.DOM]:
  TLN: Status[Enabled]                  DNS[*.WIN.DOM]
  DOM: Status[Enabled]                  DNS[WIN.DOM] Netbios[WIN] SID[S-1-5-21-534750258-3577407189-1049577339]
  Setup remote forest trust information...
  Namespaces[2] TDO[lin.loc]:
  TLN: Status[Enabled]                  DNS[*.lin.loc]
  DOM: Status[Enabled]                  DNS[lin.loc] Netbios[LIN] SID[S-1-5-21-1859323732-4157578351-390439025]
  Validating outgoing trust...
  OK: LocalValidation: DC[\\DC1.WIN.DOM] CONNECTION[WERR_OK] TRUST[WERR_OK] VERIFY_STATUS_RETURNED
  Validating incoming trust...
  OK: RemoteValidation: DC[\\dc2.lin.loc] CONNECTION[WERR_OK] TRUST[WERR_OK] VERIFY_STATUS_RETURNED
  Success.


В этом вопросе полной ясности у меня нет...
=== Подводные камни и ограничения ===
1. Не применяются правила фильтрации SID


Точнее, на данный момент пользователь DomA (<tt>DOMA\user</tt>) может получить доступ к ресурсу DomB (<tt>//PDCDOMB/share</tt>) только если его <tt>sambaSID</tt> (и/или <tt>sambaSID</tt> группы к которой он принадлежит) указать поле <tt>sambaSIDList</tt> группы домена DomB имеющей к данному ресурсу доступ. Но я не разобрался как и какими samb`овскими утилитами это нужно делать. (Делаю через прямое редактирование LDAP базы...)
2. Вы не можете добавить пользователей и группы доверенного домена в доменные группы доверяющего домена.


=== Ссылки ===
=== Ссылки ===


* [https://www.kania-online.de/wp-content/uploads/2019/06/trusts-tutorial-en.pdf https://www.kania-online.de/wp-content/uploads/2019/06/trusts-tutorial-en.pdf]
* [http://us1.samba.org/samba/docs/man/Samba-HOWTO-Collection/InterdomainTrusts.html http://us1.samba.org/samba/docs/man/Samba-HOWTO-Collection/InterdomainTrusts.html]
* [http://us1.samba.org/samba/docs/man/Samba-HOWTO-Collection/InterdomainTrusts.html http://us1.samba.org/samba/docs/man/Samba-HOWTO-Collection/InterdomainTrusts.html]


[[Category:Samba]]
[[Category:Samba]]
{{Category navigation|title=Samba|category=Samba|sortkey={{SUBPAGENAME}}}}
{{Category navigation|title=Samba|category=Samba|sortkey={{SUBPAGENAME}}}}

Версия от 20:43, 30 марта 2021

Stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.


Установка доверительных отношений между Windows 2012R2 и SambaDC

Исходные данные

  • Домен Windows:
 Имя домена - WIN.DOM
 Контроллер домена - DC1.WIN.DOM
 IP address - 172.16.100.124
 ОС контроллера домена - Windows Server 2012R2
 Уровень работы домена - 2012R2
  • Домен Linux:
 Имя домена - LIN.LOC
 Контроллер домена - DC2.LIN.LOC
 IP address - 172.16.100.135
 ОС контроллера домена - Alt 9 Server
 Уровень работы домена - 2012_R2
 Версия Samba - 4.12.11

Основная задача - описать процесс создания двухсторонних доверительных отношений между доменами на базе Windows AD и Samba DC. Проверить возможность входа пользователей и групп одного домена в другой и наоборот.

Настройка на стороне Windows

1. Для службы DNS создать сервер условной перессылки

PS$ Add-DnsServerConditionalForwarderZone -Name lin.loc -MasterServers 172.16.100.134 -ReplicationScope Forest

2. Создание двухстороннего транзитивного подключения

Здесь будут размещены скриншоты настройки на стороне Windows

Настройка на стороне Linux

Предполагается, что домен уже настроен согласно документации, и функционирует с настроенным BIND9_DLZ в качестве DNS-backend.

1. Создание сервера условной перессылки для службы DNS:

 vim /etc/bind/ddns.conf
 Добавить в конец файла следующие строки
 zone "win.dom" in {
     type forward;
     forwarders { 172.16.100.124; };
 };

2. Создание входящего транзитивного подключения:

 samba-tool domain trust create win.dom --type=forest --direction=both --create-location=local -Uadmin@WIN
 В общем случае ваш вывод должен быть примерно похож, на представленный ниже
 LocalDomain Netbios[LIN] DNS[lin.loc] SID[S-1-5-21-1859323732-4157578351-390439025]
 RemoteDC Netbios[DC1] DNS[DC1.WIN.DOM] 
 ServerType[PDC,GC,LDAP,DS,KDC,TIMESERV,CLOSEST,WRITABLE,GOOD_TIMESERV,FULL_SECRET_DOMAIN_6,ADS_WEB_SERVICE,DS_8,__unknown_00008000__]
 Password for [admin@WIN]:
 RemoteDomain Netbios[WIN] DNS[WIN.DOM] SID[S-1-5-21-534750258-3577407189-1049577339]
 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...
 Namespaces[2] TDO[WIN.DOM]:
 TLN: Status[Enabled]                  DNS[*.WIN.DOM]
 DOM: Status[Enabled]                  DNS[WIN.DOM] Netbios[WIN] SID[S-1-5-21-534750258-3577407189-1049577339]
 Setup remote forest trust information...
 Namespaces[2] TDO[lin.loc]:
 TLN: Status[Enabled]                  DNS[*.lin.loc]
 DOM: Status[Enabled]                  DNS[lin.loc] Netbios[LIN] SID[S-1-5-21-1859323732-4157578351-390439025]
 Validating outgoing trust...
 OK: LocalValidation: DC[\\DC1.WIN.DOM] CONNECTION[WERR_OK] TRUST[WERR_OK] VERIFY_STATUS_RETURNED
 Validating incoming trust...
 OK: RemoteValidation: DC[\\dc2.lin.loc] CONNECTION[WERR_OK] TRUST[WERR_OK] VERIFY_STATUS_RETURNED
 Success.

Подводные камни и ограничения

1. Не применяются правила фильтрации SID

2. Вы не можете добавить пользователей и группы доверенного домена в доменные группы доверяющего домена.

Ссылки