Product SiteDocumentation Site

2.6. Заведение дополнительного контроллера домена

Для обеспечения отказоустойчивости и балансировки нагрузки в домен могут добавляться дополнительные контроллеры домена.
Системные требования к дополнительному DC такие же, как и для первого DC (см. Системные требования к серверу Samba AD DC).

Примечание

В терминологии контроллеров домена нет понятия PDC/BDC, т.е. все контроллеры равны, но один из них выступает владельцем ролей FSMO (см. Просмотр и передача ролей FSMO).
Заведение дополнительного контроллера домена выполняется путём присоединения дополнительного DC к существующему домену.

2.6.1. Заведение дополнительного контроллера

Таблица 2.3. Параметры контроллеров домена

IP-адрес
Полное доменное имя (FQDN)
Существующий DC
192.168.0.122
dc1.test.alt
Добавляемый DC
192.168.0.123
dc2.test.alt
Для сервера, на котором будет разворачиваться контроллер домена, должен быть назначен статический IP-адрес и установлено правильное имя узла.
Установить имя узла можно, выполнив команду:
# hostnamectl set-hostname dc2.test.alt

Примечание

После изменения имени компьютера могут перестать запускаться приложения. Для решения этой проблемы необходимо перезагрузить систему.
Все действия, указанные ниже, выполняются на узле dc2.test.alt (192.168.0.123), если не указано иное.

Примечание

Для выполнения операции присоединения к домену требуется пароль администратора домена.
Этапы настройки сервера и присоединения к домену в роли контроллера домена:
  1. Установить пакет task-samba-dc, который установит все необходимое:
    # apt-get install task-samba-dc
    
  2. На добавляемом DC в /etc/resolv.conf обязательно должен быть добавлен первый DC как nameserver:
    # echo "name_servers=192.168.0.122" >> /etc/resolvconf.conf
    # echo "search_domains=test.alt" >> /etc/resolvconf.conf
    # resolvconf -u
    # cat /etc/resolv.conf
    search test.alt
    nameserver 192.168.0.122
    nameserver 8.8.8.8
    
  3. Остановить конфликтующие службы krb5kdc и slapd, а также bind:
    # for service in smb nmb krb5kdc slapd bind; do systemctl disable $service; systemctl stop $service; done
    
  4. Очистить базы и конфигурацию Samba (домен, если он создавался до этого, будет удалён):
    # rm -f /etc/samba/smb.conf
    # rm -rf /var/lib/samba
    # rm -rf /var/cache/samba
    # mkdir -p /var/lib/samba/sysvol
    
  5. На существующем контроллере домена завести IP-адрес для нового DC (команда выполняется на узле dc1.test.alt):
    # samba-tool dns add 192.168.0.122 test.alt DC2 A 192.168.0.123 -Uadministrator
    Password for [TEST\administrator]:
    Record added successfully
    

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

    Указание аутентифицирующей информации (имени пользователя и пароля) обязательно!

    Примечание

    Синтаксис команды samba-tool dns add см. в разделе Администрирование DNS
  6. На новом DC установить следующие параметры в файле конфигурации клиента Kerberos /etc/krb5.conf):
    [libdefaults]
    default_realm = TEST.ALT
    dns_lookup_realm = false
    dns_lookup_kdc = true
    
  7. Запросить билет Kerberos администратора домена:
    # kinit administrator@TEST.ALT
    Password for administrator@TEST.ALT:
    

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

    Имя домена должно быть указано в верхнем регистре.
  8. Убедиться, что билет получен:
    # klist
    Ticket cache: KEYRING:persistent:0:0
    Default principal: administrator@TEST.ALT
    
    Valid starting       Expires              Service principal
    27.03.2024 14:14:36  28.03.2024 00:14:36  krbtgt/TEST.ALT@TEST.ALT
    	renew until 28.03.2024 14:14:32
    
  9. Ввести дополнительный DC в домен test.alt в качестве контроллера домена (DC):
    # samba-tool domain join test.alt DC -Uadministrator --realm=test.alt --option="dns forwarder=8.8.8.8"
    
    Если всё нормально, в конце будет выведена информация о присоединении к домену:
    Joined domain TEST (SID S-1-5-21-80639820-2350372464-3293631772) as a DC
    

    Примечание

    При использовании SAMBA_INTERNAL, необходимо указать значение dns forwarder, чтобы на новом сервере была настроена пересылка запросов. Форвардером может быть как вышестоящий DNS-сервер организации, так и публичные от google или yandex, например:
    --option="dns forwarder=8.8.8.8"
    Если первый контроллер домена создавался с ключом --rfc2307, то и для текущего необходимо это учесть, указав параметр:
    --option='idmap_ldb:use rfc2307 = yes'
  10. Сделать службу samba запускаемой по умолчанию и запустить её:
    # systemctl enable --now samba
    

Примечание

Для получения дополнительной информации о параметрах команды samba-tool domain join можно воспользоваться командой:
# samba-tool domain join --help