Предыстория:
я не слишком знаком с плюсами и минусами аутентификации pam и LDAP на стороне конфигурации. Я использовал системы, использующие PAM, но я работал только с приложениями, а не с самими системами.
Вопросы:
Использование pam для управления аутентификацией через LDAP означает ли это, что домашний каталог не будет создан в системе?
Если нет, я бы создал пользователей на сервере или каким-то образом подтолкнул бы пользователей в систему из источника LDAP?
Ответы:
Это именно то, что
pam_mkhomedir
было сделано для. Модуль может создать домашний каталог пользователя при входе в систему, если этот каталог не существует.pam_mkhomedir
Как его установить, зависит от вашего дистрибутива. Но вам нужно будет поместить его в один или несколько файлов
/etc/pam.d
.Например, у меня в системе есть
/etc/pam.d/system-login
все другие сервисы, которые выполняют вход в систему (ssh, gdm и т. Д.).Я бы положил
pam_mkhomedir.so
вsession
стек, например:Место, куда вы положили, полностью зависит от того, что еще находится в стеке. Но вы должны поместить это прежде всего, что может нуждаться в домашнем каталоге.
Смотрите
man 8 pam_mkhomedir
варианты, которые он поддерживает.источник
auth
стек вместоsession
). Если приложение не использует стек pam, вам придется встроить что-то в само приложение.В Ubuntu 14.04
system-login
нет, но другой файл с именем ascommon-session
присутствует.Я пошел туда и положил:
Это создаст домашний каталог, если не существует, также установите разрешение на
700
источник
umask=0022
. Я полагаю, что ваша функция удаляет ВСЕ возможности, в том числе те,read
которые могут помешать некоторым механизмам аутентификации / доверия на основе ключей работать в многопользовательской системе или других случаях.Я бы порекомендовал использовать oddjob-mkhomedir :
Для Centos 7 это работает:
Добавьте это к
/etc/pam.d/system-auth
и/etc/pam.d/password-auth
:И наконец:
Первоначально это было размещено здесь: https://www.centos.org/forums/viewtopic.php?t=48631.
Примечание: если вы только что установили
/home
раздел, не забудьте сделатьrestorecon /home
источник