Coloque
map passwd homeDirectory "/home/$uid"
para /etc/nslcd.conf
(nos sistemas Debian, em outros sistemas pode ser /etc/(ldap)/ldap.conf
)
Estou tentando configurar o login do Linux por meio de um servidor LDAP.
Eu tenho tudo funcionando, exceto a configuração do diretório pessoal do usuário. Não há nenhum parâmetro no banco de dados LDAP que eu possa mapear para o atributo homeDirectory e não tenho o poder de alterar o banco de dados.
Existe alguma maneira de configurá-lo para usar algo como / home / $ UID, em que $ UID é o nome de usuário que eles estão usando para fazer login / que vem do atributo LDAP?
Obrigado.
Coloque
map passwd homeDirectory "/home/$uid"
para /etc/nslcd.conf
(nos sistemas Debian, em outros sistemas pode ser /etc/(ldap)/ldap.conf
)
Uma opção é usar algo como nsscache e, em seguida, ter um script que é executado no banco de dados passwd em cache e modifica os atributos do diretório inicial do usuário.
Sendo Linux, você pode tentar usar o PAM :
Em /etc/pam.d/common-session
put:
session required pam_mkhomedir.so skel=/etc/skel umask=0002
Preencha o /etc/skel
do modelo inicial que você deseja para os usuários.
No primeiro login, a casa será criada.
Você terá que lidar com a exclusão do usuário ... as residências deles permanecerão nos servidores.