Дерево страниц

Вы просматриваете старую версию данной страницы. Смотрите текущую версию.

Сравнить с текущим просмотр истории страницы

Версия 1 Следующий »

Введение

Статья основана на материалах из wiki.samba.org

Для нормальной работы доменного леса Active Directory (AD) достаточно одного контроллера домена (domain controller, DC). Однако, для обеспечения отказоустойчивости и балансировки нагрузки, желательно всегда добавлять к домену дополнительные DC.
Процедура приосединения дополнительного Samba DC к существующему домену AD отличается от процедуры назначения первого DC домена.
Для создания нового доменного леса AD см. Samba как контроллер домена AD

Домены NT4 используют только один первичный контроллер домена (Primary Domain Controller, PDC) и, опционально, дополнительные резервные контроллеры (Backup Domain Controllers, BDC).
В доменном лесу AD не существует разницы между различными DC, за исключением ролей FSMO, поэтому, когда речь идёт о домене AD, во избежание путаницы,  используется единый термин "контроллер домена" или "DC".

Подготовка установки

См. Samba как контроллер домена AD

Установка Samba

См. Samba как контроллер домена AD

Подготовка хоста к присоединению к домену

Локальный сервер DNS

По умолчанию, первый контроллер домена (DC) в доменном лесу поддерживает собственный сервер DNS для зон AD. Для обеспечения отказоустойчивости рекомендуется иметь в сети несколько DC, работающих также и как серверы DNS.
Если планируется поддерживать дополнительный DNS, то:

Для установки и настройки DNS см. BIND9 как DNS-сервер для Samba AD.

Параметр 'nameserver' в файле настройки разрешения имён '/etc/resolv.conf' должен указывать на  AD DC, иначе присоединяемый DC не сможет найти доменную службу Kerberos  KDC

Kerberos

Используйте для файла параметров клиента Kerberos следующие настройки /etc/krb5.conf:


[libdefaults]
dns_lookup_realm = false
dns_lookup_kdc = true
default_realm = SAMDOM.EXAMPLE.COM

Для проверки правильности настройки клиента используйте команду получения билета Kerberos kinit:


kinit administrator

Чтобы просмотреть полученные билеты:

klist

Присоединение у домену AD в роли DC

Пример присоединения к домену samdom.example.com в роли контроллера домена (DC), дополнительно работающего как сервер DNS с использованием внутреннего DNS Samba:

samba-tool domain join samdom.example.com DC -U"SAMDOM\administrator" --dns-backend=SAMBA_INTERNAL

После ввода команды будет запрошен пароль администратора домена, и выдана информациия о ходе присоединения:

Finding a writeable DC for domain 'samdom.example.com'
Found DC dc1.samdom.example.com
Password for [SAMDOM\administrator]:
workgroup is SAMDOM
realm is samdom.example.com
Adding CN=DC2,OU=Domain Controllers,DC=samdom,DC=example,DC=com
Adding CN=DC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=samdom,DC=example,DC=com
Adding CN=NTDS Settings,CN=DC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=samdom,DC=example,DC=com
Adding SPNs to CN=DC2,OU=Domain Controllers,DC=samdom,DC=example,DC=com
Setting account password for DC2$
Enabling account
Calling bare provision
Looking up IPv4 addresses
Looking up IPv6 addresses
No IPv6 address will be assigned
Setting up share.ldb
Setting up secrets.ldb
Setting up the registry
Setting up the privileges database
Setting up idmap db
Setting up SAM db
Setting up sam.ldb partitions and settings
Setting up sam.ldb rootDSE
Pre-loading the Samba 4 and AD schema
A Kerberos configuration suitable for Samba 4 has been generated at /usr/local/samba/private/krb5.conf
Provision OK for domain DN DC=samdom,DC=example,DC=com
Starting replication
Schema-DN[CN=Schema,CN=Configuration,DC=samdom,DC=example,DC=com] objects[402/1550] linked_values[0/0]
Schema-DN[CN=Schema,CN=Configuration,DC=samdom,DC=example,DC=com] objects[804/1550] linked_values[0/0]
Schema-DN[CN=Schema,CN=Configuration,DC=samdom,DC=example,DC=com] objects[1206/1550] linked_values[0/0]
Schema-DN[CN=Schema,CN=Configuration,DC=samdom,DC=example,DC=com] objects[1550/1550] linked_values[0/0]
Analyze and apply schema objects
Partition[CN=Configuration,DC=samdom,DC=example,DC=com] objects[402/1618] linked_values[0/0]
Partition[CN=Configuration,DC=samdom,DC=example,DC=com] objects[804/1618] linked_values[0/0]
Partition[CN=Configuration,DC=samdom,DC=example,DC=com] objects[1206/1618] linked_values[0/0]
Partition[CN=Configuration,DC=samdom,DC=example,DC=com] objects[1608/1618] linked_values[0/0]
Partition[CN=Configuration,DC=samdom,DC=example,DC=com] objects[1618/1618] linked_values[42/0]
Replicating critical objects from the base DN of the domain
Partition[DC=samdom,DC=example,DC=com] objects[100/100] linked_values[23/0]
Partition[DC=samdom,DC=example,DC=com] objects[386/286] linked_values[23/0]
Done with always replicated NC (base, config, schema)
Replicating DC=DomainDnsZones,DC=samdom,DC=example,DC=com
Partition[DC=DomainDnsZones,DC=samdom,DC=example,DC=com] objects[44/44] linked_values[0/0]
Replicating DC=ForestDnsZones,DC=samdom,DC=example,DC=com
Partition[DC=ForestDnsZones,DC=samdom,DC=example,DC=com] objects[19/19] linked_values[0/0]
Committing SAM database
Sending DsReplicaUpdateRefs for all the replicated partitions
Setting isSynchronized and dsServiceName
Setting up secrets database
Joined domain SAMDOM (SID S-1-5-21-469703510-2364959079-1506205053) as a DC

Другие часто используемые параметры команды samba-tool domain join:

ПараметрОписание

--site=SITE

Прямое указание хоста AD DC для присоединения.

--option="interfaces=lo eth0" --option="bind interfaces only=yes"

Если хост имеет несколько сетевых интерфейсов, используйте эту опции для привязки Samba к нужным интерфейсам.
Это позволит инструменту samba-tool в процессе присоединения зарегистрировать корректные IP-адреса хоста.

--option='idmap_ldb:use rfc2307 = yes'

Если другие контроллеры были назначены с использованием опции --use-rfc2307, используйте эту опцию для присоединяемого контроллера.

Подробности по команде samba-tool domain join см. в 


samba-tool domain join --help

Проверка записей DNS

Инструмент samba-tool создаёт все необходимые записи автоматически. Для проверки см. Проверка и создание записей DNS DC.

Настройка сервиса DNS BIND9_DLZ 

Если при присоединении выбран сервис DNS BIND9_DLZ, настройку сервиса см. BIND9 как DNS-сервер для Samba AD.

Отображение встроенных пользователей и групп

Репликация ресурса Sysvol в настоящее время в Samba не поддерживается. Для использования существующих обходных решений все DC домена должны использовать одинаковое отбражение идентификаторов встроенных пользователей и  групп.

По умолчанию, Samba DC хранит идентификаторы пользователей и групп в атрибуте 'xidNumber' в 'idmap.ldb'.
При этом, реализация 'idmap.ldb' не гарантирует, что все DC будут использовать одинаковый идентификатор для любого пользователя или группы.
Для того, чтобы обеспечить одинаковость идентификаторов, требуется:

  • Создать актуальную резервную копию файла /var/lib/samba/private/idmap.ldb на ранее установленном DC командой:


tdbbackup -s .bak /var/lib/samba/private/idmap.ldb

Эта команда создаст файл с копией /var/lib/samba/private/idmap.ldb.bak.

  • Переместить резервную копию в каталог /var/lib/samba/private/ на новом присоединяемом DC, и переименовать, удалив суффикс .bak, чтобы заменить существующий файл.
  • Обновить список контроля доступа (ACL) каталога Sysvol на новом DC:


samba-tool ntacl sysvolreset

Запуск сервиса Samba

См. Samba как контроллер домена AD

Проверка репликации каталогов


После запуска  DC, служба синхронизации данных (knowledge consistency checker, KCC) на Samba DC создаёт соглашения о репликациии с другими DC в этом доменном лесу AD.
Автоматическая генерация соединений репликации может занять до 15-ти минут.

Подробности см. Проверка статусов репликации каталогов.

Для оптимизации стоимости и времени репликации, KCC в Samba более не создаёт полносвязанную топологию репликации. Подпробности см. Samba KCC.

Запуск BIND

Перед запуском сервиса BIND проверьте, что все части каталогов DNS успешно реплицированы:


samba-tool drs showrepl
...
==== INBOUND NEIGHBORS ====
...
DC=DomainDnsZones,DC=samdom,DC=example,DC=com
Default-First-Site-Name\DC1 via RPC
DSA object GUID: 4a6bd92a-6612-4b15-aa8c-9ec371e8994f
Last attempt @ Thu Sep 24 20:08:45 2015 CEST was successful
0 consecutive failure(s).
Last success @ Thu Sep 24 20:08:45 2015 CEST
...
DC=ForestDnsZones,DC=samdom,DC=example,DC=com
Default-First-Site-Name\DC1 via RPC
DSA object GUID: 4a6bd92a-6612-4b15-aa8c-9ec371e8994f
Last attempt @ Thu Sep 24 20:08:45 2015 CEST was successful
0 consecutive failure(s).
Last success @ Thu Sep 24 20:08:45 2015 CEST

Тестирование Samba AD DC

Проверка файлового сервера

Подробности см. Samba как контроллер домена AD

Проверка локального сервера DNS

Этот шаг можно пропустить, если при присоединении выбрана опция --dns-backend=NONE.

Запрос у локального сервера  разрешения доменного имени samdom.example.com:


host -t A samdom.example.com localhost
Using domain server:
Name: localhost
Address: 127.0.0.1#53
Aliases:

samdom.example.com has address 10.99.0.1
samdom.example.com has address 10.99.0.2

Локальный DNS должен разрешать имя домена в IP-адреса всех контроллеров домена (DC).

В случае, если это не так, см. документацию и журналы:

  • Системный журнал;
  • Журналы Samba;
  • Журналы BIND, если используется BIND9_DLZ

Проверка Kerberos

Подробности см. Проверка Kerberos.

Настройка DNS на контроллерах домена

Настройка DNS на контроллерах домена крайне важна, так как репликация данных невозможна, если контроллер не может найти другие контроллеры.

Укажите IP-адрес DC как адрес первичного сервера DNS. Например, на новом присоединённом DC, используем адрес 10.99.0.2:


nameserver 10.99.0.2
search samdom.example.com

Настройка синхронизации времени

Kerberos требует синхронизации показаний часов у всех участников домена. Подробности см. Синхронизация времени.

Настройка Winbindd на Samba AD DC

Необязательно. Подробности см. Настройка Winbindd на Samba AD DC.

Использование контроллера домена в качестве файлового сервера

Подробности см. Samba как контроллер домена AD

Репликация Sysvol

Samba в настоящее время не поддерживает репликацию Sysvol. Неподдерживаемые обходные решения см. Репликация Sysvol.

Если на других DC в каталоге Sysvol есть что-то, кроме GPO по умолчанию,  обязательно нужно синхронизировать Sysvol на новом DC, иначе samba-tool ntacl sysvolreset будет завершаться с ошибкой.

Тестирование репликации каталогов

Для проверки корректности работы репликации катлогов, добавьте нового пользователя на ранее устанвленном DC, и убедитесь, что он автоматически появился на новом DC.

Также, можно использовать инструмент сравнения ldapcmp, чтобы сравнить два каталога. Подробности см. samba-tool ldapcmp.

Поиск и устранение проблем

Подробности см.  Поиск и устранение проблем


  • Нет меток