- Вопрос или проблема
- Ответ или решение
- Проблема присоединения Ubuntu Studio 22.04.1 к Active Directory: решение
- Шаг 1: Анализ сообщения об ошибке Kerberos
- Шаг 2: Проверка конфигурации SSSD
- Шаг 3: Установка зависимостей и тестирование
- Шаг 4: Проверка связи с контроллером домена
- Шаг 5: Устранение аномалий
- Заключение
Вопрос или проблема
Я пытаюсь подключить свою свежую установку Ubuntu Studio 22.04.1 к домену AD, размещенному на моем NAS Synology, следуя инструкциям в этом документе, начиная с страницы 11 (“Присоединение после установки через SSSD”).
Когда я выполняю рекомендуемые проверки на страницах 19-20, все выглядит нормально, но когда я запускаю:
systemctl status sssd
как указано на странице 21, я получаю ожидаемый вывод, показанный в документе, за которым следует 5 сообщений об ошибках, похожих на это:
tkey query failed: GSSAPI error: Major = Unspecified GSS failure. Minor code may provide more information, Minor = Server not found in Kerberos database.
Остальные тесты на страницах 21-24 с использованием sssctl и samba-tool дают ожидаемые результаты, но когда я пытаюсь войти в систему (из существующей сессии терминала), я получаю:
login: Cannot possibly work without effective root
Поскольку команда входа, кажется, введена в оболочке, а не в приглашении сессии терминала, я, возможно, неправильно понял контекст.
В любом случае, что я могу/должен сделать с ошибками Kerberos? Предположительно, вход в AD будет невозможен без сервера Kerberos.
Я заметил, что DNSHostName в домене содержал только имя сервера моего рабочего стола Ubuntu Studio, а не FQDN. Поскольку изменить это оказалось сложно, я использовал “realm leave”, чтобы удалить клиентскую машину из домена, удалил запись компьютера из Контроллера домена (DC) и снова присоединился к домену. Единственное, что я сделал иначе, это оставил “use_fully_qualified_names = True” в “/etc/sssd/sssd.conf”, вместо того чтобы изменить его на “False”, опция, упомянутая внизу страницы 16 в документе. Теперь все, похоже, работает как ожидалось. Единственные особенности, которые я заметил, следующие:
- Из-за установки FQDN в “/etc/hostname”, как описано на странице 10 документа, как “hostname”, так и “hostname -f” возвращают FQDN.
- “dig”, “host”, “nslookup” и “resolvectl query” все возвращают адрес “127.0.1.1” (с 127.0.0.53#53), независимо от того, запрашиваются ли они с простым именем сервера или FQDN.
- Однако обратный поиск работает как ожидалось с “dig”, “host”, “nslookup” и “resolvectl query”. Все они возвращают , и .local
Ничто из этого, похоже, не вызывает проблем (пока 😉
Ответ или решение
Проблема присоединения Ubuntu Studio 22.04.1 к Active Directory: решение
Контекст задачи:
Вы пытаетесь присоединить свежую установку Ubuntu Studio 22.04.1 к домену Active Directory, размещенному на вашем NAS Synology. Вы следовали инструкциям в указанном вами документе с 11 страницы, и, несмотря на успешные проверки, возникли проблемы с Kerberos и установкой соединения.
Шаг 1: Анализ сообщения об ошибке Kerberos
Сообщение об ошибке:
tkey query failed: GSSAPI error: Major = Unspecified GSS failure. Minor code may provide more information, Minor = Server not found in Kerberos database.
Это означает, что клиент не может корректно взаимодействовать с сервером Kerberos. Возможные причины:
-
Несоответствие DNS: Неустановленный или неправильно настроенный DNS может привести к тому, что Kerberos не сможет найти необходимые записи. Убедитесь, что на клиенте и контроллере домена указаны правильные DNS-серверы.
-
Неверная конфигурация Kerberos: Проверьте файл
/etc/krb5.conf
. В нем должны быть корректно указаны адреса контроллеров домена и другие параметры.
Пример конфигурации:
[libdefaults]
default_realm = YOUR_REALM.EXAMPLE.COM
dns_lookup_realm = false
dns_lookup_kdc = true
[realms]
YOUR_REALM.EXAMPLE.COM = {
kdc = your_kdc_address
admin_server = your_kdc_address
}
[domain_realm]
.your_domain.com = YOUR_REALM.EXAMPLE.COM
your_domain.com = YOUR_REALM.EXAMPLE.COM
Где your_kdc_address
— это адрес вашего контроллера домена.
Шаг 2: Проверка конфигурации SSSD
Ваша настройка файла /etc/sssd/sssd.conf
может также влиять на работу сервиса. Убедитесь, что у вас правильно настроены секции [domain]
и настройки Kerberos:
[domain/YOUR.DOMAIN]
id_provider = ad
auth_provider = ad
access_provider = ad
krb5_realm = YOUR.REALM
realmd_tags = manages-system joined-with-adcli
use_fully_qualified_names = True
fallback_homedir = /home/%u
default_shell = /bin/bash
Шаг 3: Установка зависимостей и тестирование
Убедитесь, что установлены все необходимые пакеты:
sudo apt update
sudo apt install realmd sssd adcli samba-common-bin
После установки, перезапустите SSSD:
sudo systemctl restart sssd
Проверьте статус:
systemctl status sssd
Шаг 4: Проверка связи с контроллером домена
- Убедитесь, что ваш сервер может разрешить имя контроллера домена. Используйте команды
dig
,nslookup
илиhost
для подтверждения. - Исходя из вашего наблюдения о том, что
dig
,host
,nslookup
возвращают адрес127.0.1.1
, проверьте конфигурацию/etc/resolv.conf
, чтобы убедиться, что DNS-серверы правильно настроены.
Шаг 5: Устранение аномалий
Вы упомянули о странностях с FQDN. Если система возвращает только 127.0.1.1
, вероятно, это связано с конфигурацией systemd-resolved
. Вам может потребоваться добавить реальный DNS-сервер в файл конфигурации.
Заключение
Необходимо проведение следующих шагов:
- Перепроверьте настройки DNS и убедитесь, что они корректны.
- Проверьте файл
/etc/krb5.conf
, убедившись, что он настроен на поиск по доменам. - Убедитесь в правильности конфигурации SSSD и его зависимостей.
- Перезапустите необходимые службы и протестируйте подключение.
Эти шаги помогут вам устранить проблемы с присоединением Ubuntu Studio к Active Directory и обеспечить корректную работу Kerberos. Если вы продолжаете сталкиваться с трудностями, рассмотрите возможность просмотра логов /var/log/sssd/sssd.log
для более детальной информации о возникающих ошибках.