Вопрос или проблема
Я нов в Linux. Я пытаюсь подключить сервер Ubuntu 16.04 к домену Windows. Я наткнулся на эту статью. Я использовал аналогичную статью для 14.04, которая работала с очень небольшими проблемами.
Когда я запускаю sudo apt install krb5-user samba sssd ntp
, я получаю сообщения об ошибках:
adduser: Предупреждение: Домашний каталог `/var/lib/sss' не принадлежит пользователю, которого вы сейчас создаёте.
Предупреждение: найден usr.sbin.sssd в /etc/apparmor.d/force-complain, переход в режим complain
Предупреждение: не удалось создать кэш: usr.sbin.sssd
Задание для sssd.service не удалось, потому что управляющий процесс завершился с кодом ошибки. См. "systemctl status sssd.service" и "journalctl -xe" для получения подробностей.
sssd.service не удалось запустить.
Я не уверен, почему это происходит.
Я разработал скрипт для этого. Вот он! https://github.com/PierreGoude/Linux-Active-Directory-join-script
Ответ или решение
Для того чтобы успешно присоединить сервер Ubuntu 16.04 к домену Windows 2012 с использованием SSSD (System Security Services Daemon), необходимо выполнить несколько шагов. Рассмотрим все аспекты процесса, включая устранение ошибок, с которыми вы столкнулись.
1. Установка необходимых пакетов
Вы уже попытались установить необходимые пакеты, но столкнулись с предупреждениями и ошибками. Чтобы убедиться, что установка прошла успешно, выполните следующие команды:
sudo apt update
sudo apt install krb5-user samba sssd ntp
Обратите внимание на возможные предупреждения. Например, сообщение о том, что каталог /var/lib/sss
не принадлежит создаваемому пользователю, может быть связано с неправильными правами доступа. Чтобы исправить это, выполните:
sudo chown root:root /var/lib/sss
sudo chmod 700 /var/lib/sss
2. Настройка Kerberos
После установки пакетов необходимо настроить Kerberos. Отредактируйте файл конфигурации Kerberos:
sudo nano /etc/krb5.conf
Убедитесь, что он содержит правильные настройки для вашего домена, например:
[libdefaults]
default_realm = YOURDOMAIN.COM
dns_lookup_realm = false
dns_lookup_kdc = true
[realms]
YOURDOMAIN.COM = {
kdc = your-kdc.yourdomain.com
admin_server = your-admin-server.yourdomain.com
}
[domain_realm]
.yourdomain.com = YOURDOMAIN.COM
yourdomain.com = YOURDOMAIN.COM
3. Конфигурация Samba
Создайте или отредактируйте файл /etc/samba/smb.conf
для настройки Samba, чтобы он правильно взаимодействовал с вашим Windows-доменом:
sudo nano /etc/samba/smb.conf
Добавьте или проверьте следующие параметры:
[global]
workgroup = YOURDOMAIN
security = ADS
realm = YOURDOMAIN.COM
kerberos method = secrets and keytab
4. Настройка SSSD
Теперь настройте SSSD, отредактировав файл /etc/sssd/sssd.conf
. Этот файл должен иметь ограниченный доступ:
sudo nano /etc/sssd/sssd.conf
Пример конфигурации:
[sssd]
services = nss, pam
config_file_version = 2
domains = YOURDOMAIN.COM
[domain/YOURDOMAIN.COM]
id_provider = ad
auth_provider = ad
access_provider = ad
5. Устранение проблем с AppArmor
Ошибка в вашем выводе упоминает AppArmor. Предварительная настройка для SSSD может быть необходима при использовании AppArmor. Чтобы отключить AppArmor для SSSD, выполните:
sudo ln -s /etc/apparmor.d/usr.sbin.sssd /etc/apparmor.d/force-complain/
sudo systemctl restart apparmor
6. Проверка статуса служб
Запустите службы и проверьте их статус:
sudo systemctl restart sssd
sudo systemctl status sssd
Если служба все еще не запускается, проверьте логи, используя:
journalctl -xe
7. Присоединение к домену
Если предыдущие шаги выполнялись успешно, вы можете попробовать присоединиться к домену с помощью команды:
sudo net ads join -U administrator
Замените administrator
на имя пользователя, имеющего права на добавление компьютеров в домен. Вам будет предложено ввести пароль.
Заключение
Соблюдение всех этих шагов должно помочь вам устранить ошибки и успешно присоединить ваш сервер Ubuntu 16.04 к домену Windows 2012. Убедитесь, что вы проверили каждую конфигурацию на корректность, и, если понадобятся дальнейшие уточнения, не стесняйтесь обращаться за помощью.