Данная статья применима к:
- Astra Linux Common Edition 2.12.43
Аннотация
В данной статье рассматривается подключение второго (резервного) контроллера Samba DC к домену под управлением Samba как контроллера домена.
Описание стенда
Стенд состоит из двух серверов под управлением Astra Linux:
- Сервер №1: основной контроллер домена
- Имя сервера: dc0 (dc0.astra.dc);
- IP-адрес: 192.168.56.49;
- Сервер №2: резервный контроллер домена
- Имя сервера: dc1 (dc1.astra.dc);
- IP-адрес: 192.168.56.50;
Далее будет использоваться имя домена astra.dc. Настройка Samba как контроллера домена будет выполняться с использованием службы BIND9.
Подготовка основного контроллера домена
Предполагается, что основной контроллер домена:
- настроен с помощью инструмента astra-sambadc (см. Инструменты Astra Linux для работы с доменами Samba AD и Windows AD);
- настройка выполнена с использованием службы BIND9 (опция -b инструмента astra-sambadc);
- разрешение DNS настроено на адрес основного контроллера домена.
- в файле /etc/hosts разрешение имени домена настроено на адрес 127.0.0.1;
Краткая инструкция по созданию основного домена
Установить пакеты:
sudo apt install astra-sambadc bind9Задать имя сервера:
sudo hostnamectl set-hostname dc0Задать настройку разрешения DNS (см. Настройка сети в ОС Astra Linux). При правильной настройке файл /etc/resolv.conf должен содержать единственную строку (кроме строк-комментариев):
nameserver 192.168.56.49
где 192.168.56.49 - IP-адрес основного контроллера домена;
Создать домен:
sudo astra-sambadc -d astra.dc -px -y -bгде:
-d astra.dc - имя создаваемого домена;
-px - интерактивный ввод пароля администратора;
-y - выполнение без запроса подтверждений;
-b - при создании домена настроить контроллер домена на использование службы BIND9;Перезагрузить компьютер:
sudo reboot- После перезагрузки:
- Убедиться, что содержимое файла /etc/resolv.conf не изменилось. Если файл изменился - откорректировать настройку сети, и повторно перезагрузить компьютер;
Опционально: убедиться, что все службы успешно запустились:
sudo systemctl list-units --failed
0 loaded units listed. Pass --all to see loaded but inactive units, too.
To show all installed unit files use 'systemctl list-unit-files'.
Создание резервного контроллера домена
Установить пакеты:
sudo apt install astra-sambadc bind9Задать имя сервера:
sudo hostnamectl set-hostname dc1Задать временную настройку разрешения DNS (см. Настройка сети в ОС Astra Linux). При правильной настройке файл /etc/resolv.conf должен быть таким же, как на основном контроллере домена, и содержать единственную строку (кроме комментариев):
nameserver 192.168.56.49
В файле /etc/hosts строку, начинающуюся с адреса 127.0.1.1, заменить на строку:
192.168.56.50 dc1
Создать на основном контроллере домена реверсивную зону DNS, необходимую для подключения резервного контроллера домена:
samba-tool dns zonecreate dc0.astra.dc 56.168.192.in-addr.arpa -U Administrator
Password for [ASTRA\Administrator]:
Zone 56.168.192.in-addr.arpa created successfullyЗарегистрировать на основном контроллере IP-адрес резервного контроллера в доменной службе DNS:
samba-tool dns add dc0.astra.dc astra.dc dc1 A 192.168.56.50 -U Administrator
Password for [WORKGROUP\Administrator]:
Record added successfullyУбедиться, что разрешение имен работает корректно. Команды:
dig dc0.astra.dcиdig dc1.astra.dcдолжны завершаться без ошибок и выдавать адрес сервера, заданного параметром команды;Запретить запуск недоменных служб winbind, smbd, nmbd и krb5-kdc:
sudo systemctl stop winbind smbd nmbd krb5-kdc
sudo systemctl mask winbind smbd nmbd krb5-kdcРазрешить запуск доменной службы samba-ad-dc:
sudo systemctl unmask samba-ad-dc
sudo systemctl enable samba-ad-dcПривести файл /etc/krb5.conf к виду:
[libdefaults] default_realm = ASTRA.DC dns_lookup_realm = true dns_lookup_kdc = true [realms] ASTRA.LAN = { default_domain = astra.dc } [domain_realm] dc = astra.dc
Получить Kerberos-билет администратора домена:
kinit AdministratorУдалить (переименовать) файл /etc/samba/smb.conf:
sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.initialСоздать контролер домена:
sudo samba-tool domain join astra.dc DC -U Administrator --realm=astra.dc --dns-backend=BIND9_DLZуспешное завершение команды должно завершиться сообщением вида:Joined domain ASTRA (SID S-1-5-21-3226316390-2541821163-4149523140) as a DC
- Настроить службу BIND9 на работу с контроллером домена:
Добавить файл настроек /var/lib/samba/bind-dns/named.conf в конфигурационный файл /etc/bind/named.conf:
echo 'include "/var/lib/samba/bind-dns/named.conf";' | sudo tee -a /etc/bind/named.confУстановить права доступа:
sudo chown -R root:bind /var/lib/samba/bind-dnsПерезапустить службу BIND9:
sudo systemctl restart bind9
Задать постоянную настройку разрешения DNS (см. Настройка сети в ОС Astra Linux). В файле /etc/resolv.conf теперь должен быть указан IP-адрес резервного контроллера:
nameserver 192.168.56.50Перезагрузить систему:
sudo reboot- После перезагрузки:
- Убедиться, что содержимое файла /etc/resolv.conf не изменилось. Если файл изменился - откорректировать настройку сети, и повторно перезагрузить компьютер;
Опционально: убедиться, что все службы успешно запустились:
sudo systemctl list-units --failed
0 loaded units listed. Pass --all to see loaded but inactive units, too.
To show all installed unit files use 'systemctl list-unit-files'.- Синхронизировать состояние контроллеров, выполнив репликацию данных:
С основного контроллера на резервный:
samba-tool drs replicate dc1.astra.dc dc0.astra.dc dc=astra,dc=dc -U Administrator
Password for [ASTRA\Administrator]:
Replicate from dc0.astra.dc to dc1.astra.dc was successful.С резервного контроллера на основной:
samba-tool drs replicate dc0.astra.dc dc1.astra.dc dc=astra,dc=dc -U Administrator
Password for [ASTRA\Administrator]:
Replicate from dc1.astra.dc to dc0.astra.dc was successful.
Первичная проверка работоспособности
На резервном контроллере домена выполнить команду создания тестового пользователя testuser:
sudo samba-tool user create testuserНа основном контроллере домена получить список пользователей, и убедиться, что учетная запись тестового пользователя появилась на основном контроллере:
sudo samba-tool user list
dns-dc0
Administrator
dns-DC1
Guest
krbtgt
testuser