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

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Оглавление


Предупреждение

Выполнение присоединения требует:

  • Наличия привилегий суперпользователя (в ОС СН - суперпользователя с высоким уровнем целостности);
  • Наличия пароля администратора того домена, к котором будет выполняться присоединение.



Информация

Данная статья применима к:

  • ОС ОН Орёл 2.12
  • ОС СН Смоленск 1.6
  • ОС СН Ленинград 8.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".

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

  • Настроить статический IP-адрес хоста;
  • В качестве IP-адреса сервера DNS указать IP-адрес существующего сервера доменного DNS

  • Задать полное доменное имя хоста:

Command
hostnamectl set-hostname dc2.samdom.example.com
  • В файле /etc/hosts указать правильный адрес хоста, например:
Информация10.0.2.253 dc2

Предполагается, что в сети уже имеется настроенный работающий сервер - контроллер домена Windows AD DC с адресом 10.0.2.10 и полным доменным именем dc1.samdom.example.

com dc2

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

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

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

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

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

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

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

Присоединение к домену может быть совмещено с установкой Samba или может быть выполнено после выполнения установки. Подробнее про установку см.Samba как контроллер домена AD. В примере далее приведён полный сценарий установки и присоединения.

Предупреждение
Перед присоединением необходимо удалить автоматически создаваемый при установке пакета Samba файл /etc/samba/smb.conf

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

Command

# Устанавливаем пакеты
sudo apt install samba winbind libpam-winbind libnss-winbind libpam-krb5 krb5-config krb5-user krb5-kdc bind9

# Останавливаем ненужные службы
sudo systemctl stop winbind smbd nmbd krb5-kdc
sudo systemctl mask winbind smbd nmbd krb5-kdc

# Удаляем конфигурационный файл
sudo rm /etc/samba/smb.conf

# Выполнение присоединения
sudo samba-tool domain join samdom.example.com DC -U"SAMDOM\administrator" --dns-backend=BIND9_DLZ

# Включаем автоматический запуск служб
systemctl unmask samba-ad-dc
systemctl enable samba-ad-dc

# Перед запуском службы настраиваем DNS-сервер
echo 'include "/var/lib/samba/bind-dns/named.conf";' | sudo tee -a /etc/bind/named.conf
sudo chown root:bind /var/lib/samba/bind-dns
sudo systemctl restart bind9

# Запускаем службу
sudo systemctl start samba-ad-dc

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

com

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

На сервере Astra Linux:

  • Настроить статический IP-адрес хоста (например, 10.0.2.250);
  • В качестве сервера DNS указать IP-адрес существующего сервера доменного DNS (т.е., в соответствии с указанными выше параметрами контроллера домена,  адрес 10.0.2.10). Содержимое файла /etc/resolv.conf должно выглядеть примерно так:

    Информация

    search samdom.example.com
    nameserver 10.0.2.10


  • Задать полное доменное имя хоста:

Command
hostnamectl set-hostname dc2.samdom.example.com
  • В файле /etc/hosts указать правильный адрес хоста, например:
Информация
10.0.2.253 dc2.samdom.example.com dc2

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

  • Дополнительно рекомендуется установить пакет dns-utils, содержащий инструмент dig для проверки настроек DNS:

    Command
    sudo apt install dns-utils

    Этот инструмент позволяет проверять информацию, выдаваюмую DNS-серверами, и позволяет выбирать, у какого именно сервера запросить информацию.

Убедиться в правильности настройки DNS можно с помощью команды host, которая должна выдать правильный IP-адрес сервера:

Command
Titlehost -t A dc2.samdom.example.com

dc2.samdom.example.com has address 10.0.2.10

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

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

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

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

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

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

Присоединение к домену может быть совмещено с установкой Samba или может быть выполнено после выполнения установки. Подробнее про установку см.Samba как контроллер домена AD. В примере далее приведён полный сценарий, включающий и установку пакетов, и установку Samba, и присоединение к домену Windows AD.

Предупреждение
Перед присоединением необходимо удалить автоматически создаваемые при установке пакетов системные службы и  файлы. См. комментарии к сценарию ниже.


Информация

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

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

Command

# Устанавливаем пакеты
sudo apt install samba winbind libpam-winbind libnss-winbind libpam-krb5 krb5-config krb5-user krb5-kdc bind9

# Останавливаем ненужные службы
sudo systemctl stop winbind smbd nmbd krb5-kdc
sudo systemctl mask winbind smbd nmbd krb5-kdc

# Удаляем конфигурационный файл
sudo rm /etc/samba/smb.conf

# Выполнение присоединения
sudo samba-tool domain join samdom.example.com DC -U"SAMDOM\administrator" --dns-backend=BIND9_DLZ

# Включаем автоматический запуск служб
systemctl unmask samba-ad-dc
systemctl enable samba-ad-dc

# Перед запуском службы настраиваем DNS-сервер
echo 'include "/var/lib/samba/bind-dns/named.conf";' | sudo tee -a /etc/bind/named.conf
sudo chown root:bind /var/lib/samba/bind-dns
sudo systemctl restart bind9

# Запускаем службу
sudo systemctl start samba-ad-dc

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

Раскрыть
titleНажмите, чтобы развернуть
Finding a writeable DC for domain 'samdom.example.com'
Found DC dc1.samdom.example.com
Password for [SAMDOM\administrator]:
workgroup is SAMDOMsudo ap
realm is samdom.example.com
Adding CN=DC2,OU=Domain Controllers
Раскрыть
titleНажмите, чтобы развернуть
Finding a writeable DC for domain 'samdom.example.com'
Found DC dc1.samdom.example.com
Password for [SAMDOM\administrator]:
workgroup is SAMDOMsudo ap
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
Adding CN=DC2,CN=ConfigurationServers,DC=samdom,DCCN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=samdom,DC=example,DC=com] objects[1206/1550] linked_values[0/0]
Schema-DN[CN=Schema
Adding CN=NTDS Settings,CN=DC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,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
Adding SPNs to CN=DC2,OU=Domain Controllers,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[
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] 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
Starting replication
Schema-DN[CN=Schema,CN=Configuration,DC=samdom,DC=example,DC=com] objects[44402/441550] linked_values[0/0]
Replicating DC=ForestDnsZonesSchema-DN[CN=Schema,CN=Configuration,DC=samdom,DC=example,DC=com
Partition[DC=ForestDnsZones] objects[804/1550] linked_values[0/0]
Schema-DN[CN=Schema,CN=Configuration,DC=samdom,DC=example,DC=com] objects[191206/191550] 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, используйте эту опцию для присоединяемого контроллера.

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 см. в man samba-tool или с помощью команды:

Command

samba-tool domain join --help

Проверки результатов присоединения

После присоединения к домену в домене должны появиться два контроллера домена, и должны дублироваться основные службы: DNS, LDAP, Kerberos.

DNS

Адрес присоединённого контроллера домена должен появиться в списке адресов домена:

Command
Titlehost -t A somedom.example.com
samdom.example.com has address 10.0.2.250
samdom.example.com has address 10.0.2.10

При этом должны быть доступны два DNS сервера. Проверим это командой dig, обращаясь к серверам dc1.samdom.example.com и dc2.samdom.example.com:

Информация
dig samdom.example.com @dc1.samdom.example.com +nocookie
dig samdom.example.com @dc2.samdom.example.com

У ответов должен быть статус NOERROR и в ответах должна содержаться секция ANSWER SECTION с адресами серверов:

Информация

...
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 25455
...
;; ANSWER SECTION:
samdom.example.com 600 IN A 10.0.2.250
samdom.example.com 600 IN A 10.0.2.10
...

Оба DNS сервера должны выдавать информацию о двух доменных службах каталогов:

Command
dig SRV _ldap._tcp.samdom.example.com @dc1.samdom.example.com +nocookie
dig SRV _ldap._tcp.samdom.example.com @dc2.samdom.example.com

У ответов должен быть статус NOERROR и в ответах должны содержаться секции ANSWER SECTION и ADDITIONAL SECTION с адресами служб:

Информация

...
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 54924
...
;; ANSWER SECTION:
_ldap._tcp.samdom.example.com. 900 IN SRV 0 100 389 dc2.samdom.example.com.
_ldap._tcp.samdom.example.com. 600 IN SRV 0 100 389 dc1.samdom.example.com.
;; ADDITIONAL SECTION:
dc2.samdom.example.com. 900 IN A 10.0.2.250
dc1.samdom.example.com. 3600 IN A 10.0.2.10
...

Аналогично, оба DNS сервера должны выдавать информацию о двух доменных службах Kerberos:

Command
dig SRV _kerberos._tcp.samdom.example.com @dc1.samdom.example.com +nocookie
dig SRV _kerberos._tcp.samdom.example.com @dc2.samdom.example.com

У ответов должен быть статус NOERROR и в ответах должны содержаться секции ANSWER SECTION и ADDITIONAL SECTION с адресами служб:

Информация

...
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 54924
...
;; ANSWER SECTION:
_ldap._tcp.samdom.example.com. 900 IN SRV 0 100 389 dc2.samdom.example.com.
_ldap._tcp.samdom.example.com. 600 IN SRV 0 100 389 dc1.samdom.example.com.
;; ADDITIONAL SECTION:
dc1.samdom.example.com. 3600 IN A 10.0.2.10
dc2.samdom.example.com. 900 IN A 10.0.2.250
...


LDAP
Для проверки доступности и работоспособности службы LDAP можно запросить отчет о репликации:

Command
sudo samba-tool drs showrepl

Примерный вывод команды:
Блок кода
collapsetrue
Default-First-Site-Name\DC2
DSA Options: 0x00000001
DSA object GUID: 303f45ca-3a45-4169-ad71-0903ac3e7ab9
DSA invocationId: 4750cc0a-ba23-4492-a1cd-3c66f5b3b073

==== INBOUND NEIGHBORS ====

CN=Configuration,DC=samdom,DC=example,dc=com
        Default-First-Site-Name\DC1 via RPC
                DSA object GUID: ce07ab44-222f-4882-b4f5-ed382f6b2047
                Last attempt @ Fri Dec  6 10:27:20 2019 MSK was successful
                0 consecutive failure(s).
                Last success @ Fri Dec  6 10:27:20 2019 MSK

DC=samdom,DC=example,dc=com
        Default-First-Site-Name\DC1 via RPC
                DSA object GUID: ce07ab44-222f-4882-b4f5-ed382f6b2047
                Last attempt @ Fri Dec  6 10:27:20 2019 MSK was successful
                0 consecutive failure(s).
                Last success @ Fri Dec  6 10:27:20 2019 MSK

DC=DomainDnsZones,DC=samdom,DC=example,dc=com
        Default-First-Site-Name\DC1 via RPC
                DSA object GUID: ce07ab44-222f-4882-b4f5-ed382f6b2047
                Last attempt @ Fri Dec  6 10:27:20 2019 MSK was successful
                0 consecutive failure(s).
                Last success @ Fri Dec  6 10:27:20 2019 MSK

CN=Schema,CN=Configuration,DC=samdom,DC=example,dc=com
        Default-First-Site-Name\DC1 via RPC
                DSA object GUID: ce07ab44-222f-4882-b4f5-ed382f6b2047
                Last attempt @ Fri Dec  6 10:27:20 2019 MSK was successful
                0 consecutive failure(s).
                Last success @ Fri Dec  6 10:27:20 2019 MSK

DC=ForestDnsZones,DC=samdom,DC=example,dc=com
        Default-First-Site-Name\DC1 via RPC
                DSA object GUID: ce07ab44-222f-4882-b4f5-ed382f6b2047
                Last attempt @ Fri Dec  6 10:27:20 2019 MSK was successful
                0 consecutive failure(s).
                Last success @ Fri Dec  6 10:27:20 2019 MSK

==== OUTBOUND NEIGHBORS ====

CN=Configuration,DC=samdom,DC=example,dc=com
        Default-First-Site-Name\DC1 via RPC
                DSA object GUID: ce07ab44-222f-4882-b4f5-ed382f6b2047
                Last attempt @ Fri Dec  6 08:27:31 2019 MSK was successful
                0 consecutive failure(s).
                Last success @ Fri Dec  6 08:27:31 2019 MSK

DC=samdom,DC=example,dc=com
        Default-First-Site-Name\DC1 via RPC
                DSA object GUID: ce07ab44-222f-4882-b4f5-ed382f6b2047
                Last attempt @ Thu Dec  5 17:24:10 2019 MSK was successful
                0 consecutive failure(s).
                Last success @ Thu Dec  5 17:24:10 2019 MSK

DC=DomainDnsZones,DC=samdom,DC=example,dc=com
        Default-First-Site-Name\DC1 via RPC
                DSA object GUID: ce07ab44-222f-4882-b4f5-ed382f6b2047
                Last attempt @ Thu Dec  5 17:24:10 2019 MSK was successful
                0 consecutive failure(s).
                Last success @ Thu Dec  5 17:24:10 2019 MSK

CN=Schema,CN=Configuration,DC=samdom,DC=example,dc=com
        Default-First-Site-Name\DC1 via RPC
                DSA object GUID: ce07ab44-222f-4882-b4f5-ed382f6b2047
                Last attempt @ Thu Dec  5 17:24:10 2019 MSK was successful
                0 consecutive failure(s).
                Last success @ Thu Dec  5 17:24:10 2019 MSK

DC=ForestDnsZones,DC=samdom,DC=example,dc=com
        Default-First-Site-Name\DC1 via RPC
                DSA object GUID: ce07ab44-222f-4882-b4f5-ed382f6b2047
                Last attempt @ Thu Dec  5 17:24:10 2019 MSK was successful
                0 consecutive failure(s).
                Last success @ Thu Dec  5 17:24:10 2019 MSK

==== KCC CONNECTION OBJECTS ====

Connection --
        Connection name: 49744c99-ca35-4811-af8f-73119e8b31f5
        Enabled        : TRUE
        Server DNS name : DC1.windomain.le
        Server DN name  : CN=NTDS Settings,CN=DC1,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=samdom,DC=example,dc=com
                TransportType: RPC
                options: 0x00000001
Warning: No NC replicated for Connection!

При проверке может выдаваться следующее предупреждение:

Информация
Warning: No NC replicated for Connection!

Согласно документации Samba, это предупреждение можно игнорировать.

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

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

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

Kerberos

Проверка работы Kerberos может быть выполнена получением билета Kerberos, например билета доменного администратора Windows AD (по умолчанию это administrator):

Command
kinit administrator


Проверить полученный билет можно командой klist:

Command
klist

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

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

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

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

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

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

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:


Command

samba-tool ntacl sysvolreset

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

Command

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 командой:
Command

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:
Command

samba-tool ntacl sysvolreset

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

Информация

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

Проверка статуса репликации выполняется командой 

Command
sudo samba-tool drs showrepl

При проверке может выдаваться предупреждение

Информация
Warning: No NC replicated for Connection!

Согласно документации Samba, это предупреждение можно игнорировать.

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

Предупреждение

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

Запуск BIND

Для успешного запуска доменного сервиса BIND9 нужно предоставить сервису права на чтение конфигурационного файла /var/lib/samba/bind-dns/named.conf, а, точнее, предоставить права на поиск этого файла в каталоге /var/lib/samba/bind-dns:

Command

sudo chown root:bind /var/lib/samba/bind-dns

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

Command
Titlesamba-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

Запуск сервиcа:

Command
sudo systemctl restart bind9

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

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

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

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

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

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

Command

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

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


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

В случае возникновения ошибок см. документацию и журналы:

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

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