O Kerberos é um sistema de autenticação; ele verifica se um usuário é quem ele diz ser. Não é, no entanto, um sistema de autorização; não há muito a dizer sobre quem pode fazer o que (incluindo o login).
Em particular, para efetuar login em um sistema Linux, você precisa de todas as entradas passwd do NSS (o Switch de Serviço de Nome). Portanto, esse usuário precisa de um diretório inicial, uid, gid primário e shell padrão especificado. Em um sistema Linux comum, essa informação é normalmente fornecida por /etc/passwd
. No entanto, o NSS permite usar outros tipos de serviços para fornecer essas informações, o que normalmente é o caso em ambientes de rede. Essas informações podem vir de arquivos locais, LDAP, NIS, winbind (samba) ou qualquer outra coisa. O NSS pode ser configurado em /etc/nsswitch.conf
. A visualização deste arquivo deve mostrar de onde vem a informação passwd. Executando o comando getent passwd username
queries nss para obter as informações passwd associadas ao usuário especificado.
Se o kerberos estiver funcionando, kinit username
deve permitir que você obtenha credenciais para o usuário. (Usuário klist
para ver as credenciais, kdestroy
para excluí-las)
Se o NSS estiver funcionando, getent passwd username
deverá mostrar uma entrada passwd válida para esse usuário.
Se o PAM estiver configurado corretamente (em /etc/pam.d
, provavelmente com o módulo pam_krb5), e o NSS e o Kerberos estiverem funcionando, o usuário deve ser capaz de efetuar login.
Se o login ainda falhar, pode valer a pena testar o login em uma linha de comando em vez de um login gráfico (se isso já não estiver sendo feito). Permissões incorretas ou diretório inicial inexistente podem causar problemas para ambientes gráficos, mas são um problema menor para logins de shell.