Estoy intentando configurar el inicio de sesión de Linux a través de un servidor LDAP.
Tengo todo funcionando excepto configurar el directorio de inicio del usuario. No hay ningún parámetro en la base de datos LDAP que pueda asignar al atributo homeDirectory y no tengo el poder para cambiar la base de datos.
¿Hay alguna manera de configurarlo para usar algo como /home/$UID, donde $UID es el nombre de usuario que están usando para iniciar sesión/que proviene del atributo LDAP uid?
Gracias.
Respuesta1
Poner
map passwd homeDirectory "/home/$uid"
a /etc/nslcd.conf
(en sistemas Debian, en otros sistemas podría ser /etc/(ldap)/ldap.conf
)
Respuesta2
Al ser Linux, puedes intentar usarPAM:
Aporte /etc/pam.d/common-session
:
session required pam_mkhomedir.so skel=/etc/skel umask=0002
Y complete /etc/skel
la plantilla de inicio que desee para los usuarios.
Al iniciar sesión por primera vez, se creará la casa.
Tendrás que lidiar con la eliminación de usuarios... sus hogares permanecerán en los servidores.
Respuesta3
Una opción es usar algo comonsscachey luego tener un script que se ejecute en la base de datos passwd almacenada en caché y modifique los atributos del directorio de inicio del usuario.