Задача:
1. Настройте доменный контроллер Samba на машине HQ-SRV2
- Создайте 15 пользователей для офиса HQ, имена пользователей формата user№.hq.
- Создайте 10 пользователей для офиса BR, имена пользователей формата user№.br.
- Пользователи группы hq имеют право аутентифицироваться на любом клиентском ПК.
На BR-CLI могут аутентифицироваться только пользователи группы br и локальные пользователи.Пользователи группы br должны иметь возможность повышать привилегии для выполнения ограниченного набора команд: cat, grep, id.- Для всех пользователей домена должны быть реализованы общие каталоги по пути /mnt/Adsamba
Вариант реализации:
HQ-SRV2:
Настройка Samba AD:
- Установить пакет task-samba-dc:
apt-get install -y task-samba-dc
Настройка BIND9 для работы с Samba AD:
- Отключить chroot:
control bind-chroot disabled
- Отключить KRB5RCACHETYPE:
echo 'KRB5RCACHETYPE="none"' >> /etc/sysconfig/bind
- Подключить плагин BIND_DLZ:
echo 'include "/var/lib/samba/bind-dns/named.conf";' >> /etc/bind/named.conf
- Отредактировать файл /etc/bind/options.conf:
vim /etc/bind/options.conf
-
- в раздел options добавить строки
-
- в раздел logging добавить строку:
- В конфигурационном файле /etc/bina/local.conf - комментируем запись для зоны прямого просмотра:
- в случае если на этапе настройки DNS сервера и домена получаются одноимённые имена для прямой зоны;
-
Выполнить остановку bind:
systemctl stop bind
- Необходимо очистить базы и конфигурацию Samba (домен, если он создавался до этого, будет удалён):
rm -f /etc/samba/smb.conf
rm -rf /var/lib/samba
rm -rf /var/cache/samba
mkdir -p /var/lib/samba/sysvol
- Для запуска интерактивной установки необходимо выполнить команду:
samba-tool domain provision
где:
- В ответе на первые два вопроса нужно указать доменное имя и имя рабочей группы;
- Далее нужно указать тип серверной роли и бэкенд DNS-сервера - BIND9_DLZ;
- Задать пароль для администратора;
- Начнется процесс конфигурации
\
-
- Результат:
- Включаем и добавляем в автозагрузку службы samba и bind:
systemctl enable --now samba
systemctl start bind
- Проверяем статус служб:
- В момент создания домена Samba конфигурирует шаблон файла krb5.conf для домена в каталоге /var/lib/samba/private/. Можно просто заменить этим файлом файл, находящийся в каталоге /etc/:
cp /var/lib/samba/private/krb5.conf /etc/krb5.conf
Проверяем:
- Просмотр общей информации о домене:
- Просмотр предоставляемых служб:
- Создаваемые по умолчанию общие ресурсы netlogon и sysvol нужны для функционирования сервера AD и создаются в smb.conf в процессе развертывания/модернизации.
- Проверка имён хостов:
- адрес _kerberos._udp.*адрес домена с точкой:
host -t SRV _kerberos._udp.au.team.
-
- адрес _ldap._tcp.*адрес домена с точкой:
host -t SRV _ldap._tcp.au.team.
-
- адрес адрес хоста.*адрес домена с точкой:
host -t A hq-srv2.au.team.
-
-
- Результат:
-
- Проверка Kerberos (имя домена должно быть в верхнем регистре):
kinit administrator@.AU.TEAM
-
- результат:
- Создаём группы hq и br:
samba-tool group add HQ
samba-tool group add BR
-
- Результат:
- Создаём пользователей для офиса HQ - и добавляем в группу HQ:
for i in {1..15}; do
samba-tool user add user$i.hq P@ssw0rd;
samba-tool user setexpiry user$i.hq --noexpiry;
samba-tool group addmembers "HQ" user$i.hq;
done
-
- Результат:
- Проверяем:
- Создаём пользователей для офиса BR - и добавляем в группу BR:
for i in {1..10}; do
samba-tool user add user$i.br P@ssw0rd;
samba-tool user setexpiry user$i.br --noexpiry;
samba-tool group addmembers "BR" user$i.br;
done
-
- Результат:
- Проверяем:
HQ-CLI:
Вводим в домен:
- Устанавливаем пакет task-auth-ad-sssd:
apt-get update && apt-get install -y task-auth-ad-sssd
- Переходим в Центр Управления Системой (ЦУС):
- Вводим в домен Active Directory ad.team:
-
- Результат:
- нажимаем ОК - и перезагружаем HQ-CLI
- Результат:
- Проверяем с HQ-SRV2 - что HQ-CLI введён в домен:
BR-SRV:
Выполняем репликацию контроллера домена с HQ-SRV2 на BR-SRV, поскольку по заданию у BR-CLI в качестве DNS-сервера должен быть адрес BR-SRV,
а а ранее закомментировали зону прямого просмотра au.team на HQ-SRV2, так как домен Active Directory обслуживает зону au.team
- Установить пакет task-samba-dc:
apt-get install task-samba-dc -y
- Аналогично HQ-SRV2 настраиваем BIND для работы с SambaDC:
-
- Отключить chroot:
control bind-chroot disabled
-
- Отключить KRB5RCACHETYPE:
echo 'KRB5RCACHETYPE="none"' >> /etc/sysconfig/bind
-
- Подключить плагин BIND_DLZ:
echo 'include "/var/lib/samba/bind-dns/named.conf";' >> /etc/bind/named.conf
-
- Отредактировать файл /etc/bind/options.conf:
vim /etc/bind/options.conf
-
-
- в раздел options добавить строки
-
-
-
- в раздел logging добавить строку:
-
-
- В конфигурационном файле /etc/bina/local.conf - комментируем запись для зоны прямого просмотра:
- в случае если на этапе настройки DNS сервера и домена получаются одноимённые имена для прямой зоны;
- В конфигурационном файле /etc/bina/local.conf - комментируем запись для зоны прямого просмотра:
-
Выполнить остановку bind:
systemctl stop bind
- Необходимо очистить базы и конфигурацию Samba (домен, если он создавался до этого, будет удалён):
rm -f /etc/samba/smb.conf
rm -rf /var/lib/samba
rm -rf /var/cache/samba
mkdir -p /var/lib/samba/sysvol
- Добавляем запись типа А на HQ-SRV2 для BR-SRV:
samba-tool dns add hq-srv2.au.team au.team br-srv A 192.168.200.65 -Uadministrator
- Далее установить следующие параметры в файле конфигурации клиента Kerberos /etc/krb5.conf:
vim /etc/krb5.conf
-
- устанавливаем следующие параметры:
- Проверяем работоспособность Kerberos:
kinit administrator@AU.TEAM
-
- Результат:
- Вводим BR-SRV в качестве контроллера домена (DC):
samba-tool domain join au.team DC -Uadministrator --realm=au.team --dns-backend=BIND9_DLZ
-
- Результат:
- Запускаем и добавляем в автозагрузку службу samba:
systemctl enable --now samba
- Включаем службу bind:
systemctl start bind
- Проверяем статус служб:
- Реплицируем на вторичном DC (с первичного):
samba-tool drs replicate br-srv.au.team hq-srv2.au.team dc=au,dc=team -Uadministrator
- Реплицируем на вторичном DC (на первичный):
samba-tool drs replicate hq-srv2.au.team br-srv.au.team dc=au,dc=team -Uadministrator
-
- Результат:
BR-CLI:
Вводим в домен Active Directory - аналогично HQ-CLI
- Результат:
HQ-SRV2:
- Добавляем записи типа А для зоны прямого просмотра au.team - через утилиту samba-tool:
- копируем уже ранее описанный файл для службы BIND для зоны прямого просмотра au.team:
cp /etc/bind/zone/au.team.db ./
-
- редактируем скопированный файл и приводим к следующему виду:
-
- на основе данного файла добавляем записи через утилиту samba-tool:
while read -r line; do
echo "P@ssw0rd" | samba-tool dns add 127.0.0.1 au.team $line -Uadministrator;
done < au.team.db
-
-
- Результат:
-
- Проверяем записи с BR-CLI:
- так как у него в качестве DNS- установлен BR-SRV, а значит за счёт репликации HQ-SRV2 и BR-SRV - можно считать его и как подчинённый DNS;
- но это если только записи в таблице DNS - одноимённые с именем домена Active Directory
- если в качестве имени для домена взять поддомен - например ad.au.team - то подобной манипуляции с репликацией можно избежать
- но это если только записи в таблице DNS - одноимённые с именем домена Active Directory
- так как у него в качестве DNS- установлен BR-SRV, а значит за счёт репликации HQ-SRV2 и BR-SRV - можно считать его и как подчинённый DNS;
Настройка доменной аутентификации для пользователей групп HQ и BR
При вводе HQ-CLI и BR-CLI в домен - пользователи группы HQ и BR могут аутентифицироваться на данных клиентских ПК, осюда следует что необходимо только ограничить доступ к BR-CLI только для пользователей группы BR;
Настраиваем для пользователей группы BR возможность повышать привилегии для выполнения ограниченного набора команд: cat, grep, id
HQ-SRV2:
Настраиваем для всех пользователей домена общие каталоги по пути /mnt/Adsamba
- Создаём директорию по пути /mnt/Adsamba и назначаем права:
mkdir /mnt/Adsamba; chmod 777 /mnt/Adsamba
- Описываем общий каталог для всез пользователей домена в конфигурационном файле /etc/samba/smb.conf:
vim /etc/samba/smb.conf
-
- добавляем следующее содержимое:
-
[Adsamba] - имя общей папки, для публикации требуемое;
-
path — указывает каталог, к которому должен быть предоставлен доступ;
-
writable — инвертированный синоним для read only (по умолчанию: writeable = no);
-
read only — если для этого параметра задано значение «yes», то пользователи службы не могут создавать или изменять файлы в каталоге (по умолчанию: read only = yes);
-
valid users - это список пользователей, которым должно быть разрешено входить в эту службу, в данном случае с использованием доменных пользователей указываем группу к которой они принадлежат;
-
- добавляем следующее содержимое:
- Перезапускаем службу samba:
systemctl restart samba
- Просмотр предоставляемых служб:
Проверяем с HQ-CLI и BR-CLI - доступность общего каталога
Про автомонтирование в задание не упоменается, поэтому просто проверям доступность ресурса;
- Вход из под локального пользователя:
- Вход из под доменного пользователя