Eu configurei o sssd com sucesso e posso ssh em um sistema com credenciais do AD. O que estou perdendo é a criação de um diretório inicial e o bash definido como o shell.
Minha suposição é que, se eu fizer logon em um sistema que ainda não tenha uma conta linux local, mas que tenha uma conta AD válida, um diretório inicial será criado na primeira vez que o usuário fizer login e os shells apropriados forem definidos conforme definido em /etc/sssd/sssd.conf
:
override_homedir = /home/%u
default_shell = /bin/bash
eu também corri
authconfig --enablesssd --enablesssdauth --enablemkhomedir --update
O que estou perdendo ou estou fazendo uma suposição incorreta sobre minha configuração existente?
Desejo evitar o uso do recurso obsoleto Identity Management for Unix do Windows.
Este problema foi resolvido movendo as entradas
da seção [sssd] de sssd.conf para [domain/lab.local]
Existem duas partes da equação. Um está no SSSD e na interface Name Service Switch em particular. Essa parte informa qual é o diretório inicial no sistema e você pode testá-lo com "getent passwd $username". Contanto que esse comando forneça respostas precisas, o SSSD está funcionando como deveria.
A outra parte é criar os diretórios iniciais. Eu recomendaria usar oddjob e pam_oddjob_mkhomedir lá sobre o antigo pam_mkhomedir. Na minha experiência, funciona melhor com o SELinux.
Procure em /var/log/secure as mensagens de erro dos módulos PAM.
Por favor, veja este post primeiro: Conhecimento comum sobre a autenticação do Active Directory para servidores Linux?
Para sistemas RHEL/CentOS 6.x, eu faço:
Para authconfig, algo como:
Meu sssd.conf simples ficaria assim: http://pastebin.com/Aa2XsYhh - Reinicie o serviço sssd após modificar a configuração.
Em seguida, instalo oddjob-mkhomedir com:
yum install oddjob-mkhomedir
- Você pode ajustar as permissões do diretório inicial para provar/etc/oddjobd.conf.d/oddjobd-mkhomedir.conf
Certifique-se de que os serviços sssd e oddjob estejam configurados para iniciar na inicialização.
Isso deve ser tudo o que é necessário.
Funciona para mim no CentOS 7 quando faço login via SSHD. O local onde o diretório pessoal criado é o grupo de gerenciamento de "sessão" que faz parte do PAM.
Na página de manual do pam(8):
Em
/etc/pam.d/password-auth
você encontrará esta linha: session opcional pam_oddjob_mkhomedir.so umask=0077que cuida da criação do diretório inicial.
Certifique-se de ter instalado e ativado o pacote
oddjob-mkhomedir
.