Выполните следующие шаги для настройки работы в домене вашей ОС Linux Debian:
1. Предварительная настройка сети, DNS, полного и короткого имени хоста.
Убедитесь, что сервер имеет корректные сетевые настройки и может разрешать доменные имена:
ping dc.YOUR_FQDN
nslookup YOUR_FQDN
Замените в файле "/etc/hosts" имя локального домена "localdomain" на имя вашего домена YOUR_FQDN командой:
sudo sed -i 's/localdomain/YOUR_FQDN/g' /etc/hosts
2. Установка необходимых пакетов.
sudo apt update
sudo DEBIAN_FRONTEND=noninteractive apt -y install realmd \
sssd sssd-tools libnss-sss libpam-sss adcli samba-common-bin \
oddjob oddjob-mkhomedir packagekit krb5-user
3. Обнаружение домена и настройка Kerberos и realmd.
Обнаружение домена:
sudo realm discover YOUR_FQDN
Для настройки Kerberos отредактируйте файл "/etc/krb5.conf":
[libdefaults]
default_realm = YOUR_FQDN
dns_lookup_realm = true
dns_lookup_kdc = true
Для настройки realmd создайте файл "/etc/realmd.conf" со следующим содержимым:
[service]
automatic-install = yes
[active-directory]
os-name = Debian
os-version = 13
Данные параметры будут отражаться в свойствах комьютерного аккаунта в Active Directory после ввода хоста в домен.
4. Предварительная настройка SSSD.
Поскольку при добавлении хоста в домен, а также при удалении из домена с помощью команды "realm join" файл "/etc/sssd/sssd.conf" будет перезаписан, лучшим вариантом будет создать новый файл конфигурации SSSD со своими параметрами.
sudo nano /etc/sssd/conf.d/10-mysettings.conf
[domain/YOUR_FQDN]
#Добавить провайдер аутентификации
auth_provider = ad
#Добавить провайдер смены пароля
chpass_provider = ad
#Режим коротких имен пользователей, при значении "false"
use_fully_qualified_names = true
#Настройка оболочки по умолчанию
default_shell = /bin/bash
#Правило формирования домашней папки
fallback_homedir = /home/%u@%d
#Добавить для игнорирования групповых политик, к которым нету доступа
ad_gpo_ignore_unreadable = true
#Добавить настройки динамического DNS
dyndns_update = true
dyndns_refresh_interval = 1800
dyndns_ttl = 1800
dyndns_update_ptr = true
Установите правильные права на файл конфигурации:
sudo chmod 600 /etc/sssd/conf.d/10-mysettings.conf
5. Присоединение к домену.
sudo realm join YOUR_FQDN \
--membership-software=adcli \
--user=DomainAdmin
Введите пароль пользователя при запросе.
Проверка успешного присоединения:
id DomainAdmin@YOUR_FQDN
6. Настройка автоматического создания домашних каталогов.
Отредактируйте файл "/etc/pam.d/common-session":
sudo nano /etc/pam.d/common-session
Добавьте в конец файла:
session optional pam_mkhomedir.so skel=/etc/skel umask=077
7. Настройка прав доступа.
Управление доступом к консоли сервера:
Запретите вход всем доменным пользователям:
sudo realm deny --all
Разрешите вход только определенным группам:
sudo realm permit -g 'Linux_Console_Users'@YOUR_FQDN
Для групп с пробелами в названии:
sudo realm permit -g '"Domain Linux Users"'@YOUR_FQDN
Проверьте настройки:
sudo realm list
Для удаления группы из доступа используйте:
sudo realm permit -g -x 'Linux_Console_Users'@YOUR_FQDN
Управление доступом по SSH:
Создайте новый файл в директории "/etc/ssh/sshd_config.d":
sudo nano /etc/ssh/sshd_config.d/10-admins.conf
Добавьте параметры для ограничения доступа по группам:
AllowGroups Linux_SSH_Users@YOUR_FQDN "Linux SSH Admins"@YOUR_FQDN
ВАЖНО!!!!
Если вы использует значение параметра "use_fully_qualified_names = false" в файле "/etc/sssd/sssd.conf", то и при настройке SSH доступа прописывайте короткое имя пользователя или группы, без названия домена, например:
AllowGroups Linux_SSH_Users "Linux SSH Admins"
Также название групп (Linux_SSH_Users и "Linux SSH Admins") и домена (YOUR_FQDN) должны быть СТРОГО В НИЖНЕМ РЕГИСТРЕ!!!
Установите правильные права на файл и перезапустите службу SSH:
sudo chmod 600 /etc/ssh/sshd_config.d/10-admins.conf
sudo systemctl restart ssh
8. Настройка прав sudo для доменных групп.
Создайте файл правил sudo:
sudo visudo -f /etc/sudoers.d/domain_admins
Всегда используйте команду "visudo", которая предотвращает сохранение конфигурации с синтаксическими ошибками.
Добавьте необходимые правила:
Полные права администратора (пример):
%Linux_Sudoers@YOUR_FQDN ALL=(ALL:ALL) ALL
Члены группы Linux_Sudoers теперь могут выполнять команды с "sudo", вводя свой пароль от учётной записи Active Directory.
Ограниченные права (пример):
%Linux_Sudoers@YOUR_FQDNALL=(root) /usr/bin/systemctl restart nginx, /usr/bin/systemctl status nginx
Для групп с пробелами в названии:
%Linux\ Admins@YOUR_FQDN ALL=(ALL:ALL) ALL
Установите права доступа на файл:
sudo chmod 440 /etc/sudoers.d/domain_admins
ВАЖНО!!!!
Если вы использует значение параметра "use_fully_qualified_names = false" в файле "/etc/sssd/sssd.conf", то и при настройке sudoers прописывайте короткое имя пользователя или группы, без названия домена, например:
%Linux_Sudoers ALL=(ALL:ALL) ALL
9. Тестирование конфигурации.
Попробуйте войти под доменной учетной записью:
ssh linux_admin@YOUR_FQDN@ip_адрес_сервера
Проверьте создание домашнего каталога:
pwd
Проверьте работу "sudo" для пользователей из разрешенных групп.
Убедитесь, что время на сервере синхронизировано с доменом (используйте NTP).
Регулярно проверяйте логи аутентификации: /var/log/auth.log.
Для диагностики проблем используйте журналы SSSD: /var/log/sssd/
Проверьте связь с контроллером домена:
klist
Проверьте возможность получение тикета Kerberos:
kinit
Вывод хоста из домена, переименование доменной машины.
Для вывода из домена вашего хоста выполните:
sudo realm leave YOUR_FQDN -v --user=DomainAdmin
При этом будут сброшены все настойки, сделаные в файле "/etc/sssd/sssd.conf".
Операция переименования для Linux сводится к следующим шагам:
1. Выводу хоста из домена.
2. Переименованию командой:
sudo hostnamectl set-hostname NEW-HOSTNAME
Также необходимо изменить имя в файле "/etc/hosts":
sudo sed -i 's/OLD-HOSTNAME/NEW-HOSTNAME/g' /etc/hosts
Перезапускаем службу:
sudo systemctl restart systemd-hostnamed
3. Повторный ввод в домен под новым именем:
sudo realm join YOUR_FQDN \
--membership-software=adcli \
--user=DomainAdmin
После ввода в домен необходимо повторно настроить доступ командой "sudo realm permit", так как файл "/etc/sssd/sssd.conf", где хранились предыдущие настройки, был сброшен службой SSSD при выходе из домена.
вторник, 30 сентября 2025 г.
Debian: Настройка для работы в домене Active Directory
Подписаться на:
Комментарии к сообщению (Atom)
Комментариев нет:
Отправить комментарий