Вопрос или проблема
Я пытаюсь создать автоматическую/безнадзорную установку Ubuntu 16.04 Desktop с использованием преоснащения и Puppet:
- Установить с помощью преоснащения, включить Puppet и запустить Puppet при перезагрузке, преоснащение также изменяет параметры приветствия по мере необходимости (это работает)
- После перезагрузки Puppet выполнит свои задачи и установит/сконфигурирует LDAP
- Тем не менее, я все еще могу войти только локально, пока не перезагружу компьютер
Какую службу я могу перезапустить или что мне нужно сделать, чтобы я мог войти с помощью LDAP без перезагрузки компьютера?
Правка: Я использовал эти инструкции для настройки аутентификации LDAP на клиентах:
https://help.ubuntu.com/lts/serverguide/openldap-server.html#openldap-auth-config
Если вы используете 16.04, sudo systemctl restart slapd.service
должно сработать.
Ответ или решение
Для того чтобы настроить LDAP на Ubuntu 16.04 без перезагрузки системы, необходимо внести изменения в конфигурацию службы и перезапустить соответствующие сервисы. Давайте подробно рассмотрим этот процесс.
Понимание проблемы
Вы уже успешно прошли этап установки операционной системы с использованием preseed, а также установки и конфигурации Puppet, который отвечает за автоматизацию настройки LDAP. Однако после завершения всех установок и конфигураций у вас возникает проблема: пользователь может войти в систему только локально до тех пор, пока не будет выполнена перезагрузка. Это связано с тем, что службы, отвечающие за аутентификацию и авторизацию, могут не быть активированы или настроены должным образом после первой загрузки.
Решение: Перезапуск служб
Чтобы устранить данную проблему, вам нужно перезапустить несколько ключевых сервисов, отвечающих за LDAP аутентификацию. Вот шаги, которые помогут вам настроить систему для работы с LDAP без необходимости перезагрузки:
-
Перезапуск службы OpenLDAP:
Убедитесь, что сервер LDAP (slapd) запущен и работает корректно. Используйте следующую команду для его перезапуска:sudo systemctl restart slapd.service
Эта команда обновит конфигурацию службы LDAP и обеспечит ее корректную работу.
-
Перезагрузка службы NSS:
После перезапуска slapd необходимо перезагрузить службы Name Service Switch (NSS), которые отвечают за аутентификацию через LDAP:sudo systemctl restart nscd.service
Если у вас не установлен NSCD, вы можете использовать
nsswitch.conf
для настройки системы таким образом, чтобы она могла использовать LDAP. Убедитесь, что файлы настроены правильно. -
Проверка настроек PAM:
Также важно убедиться, что глобальные настройки Pluggable Authentication Module (PAM) правильно настроены для аутентификации через LDAP. Проверьте файл/etc/pam.d/common-auth
,/etc/pam.d/common-account
и другие файлы PAM, чтобы убедиться, что там корректно представлены необходимые модули. -
Проверка файла конфигурации:
Убедитесь, что в файле/etc/nsswitch.conf
следующие строки настроены для использования LDAP:passwd: compat ldap group: compat ldap shadow: compat ldap
Тестирование
После выполнения всех вышеописанных действий, выполните тест, пытаясь войти в систему с учетными данными LDAP. Если все было сделано верно, вход должен пройти успешно без необходимости перезагрузки системы.
Заключение
Следуя данным шагам, вы сможете устранить проблему аутентификации через LDAP без перезагрузки системы. Это позволит оптимизировать устанавливаемую вами автоматизированную среду и улучшить процесс управления пользователями в вашей системе. Если у вас возникнут дополнительные вопросы или проблемы, не стесняйтесь обращаться за помощью.