Seu auth.log contém a seguinte dica:
bharathi passwd[3715]: pam_unix(passwd:chauthtok): authentication failure; logname=test uid=1000 euid=0 tty= ruser= rhost= user=test
Olhando para a senha comum, as linhas relevantes são:
password requisite pam_krb5.so minimum_uid=1000
O módulo Kerberos-PAM lidará apenas com usuários com uid > = 1000, o que é bom para manter contas locais como root
funcionando mesmo quando a rede falha.
O requisito marca este módulo como sempre necessário, portanto, neste caso sucesso é armazenado como resultado, mas os seguintes módulos ainda são executados.
password [success=2 default=ignore] pam_unix.so obscure use_authtok try_first_pass sha512
O próximo módulo é o módulo unix com falha, que agora tenta alterar a senha em /etc/shadow
. Mas como esse é um usuário do Kerberos, provavelmente não há entrada em /etc/shadow
. Devido ao ignore , esta falha é ignorada: o erro ainda é registrado, mas o resultado para a pilha PAM não é alterado.
Mas o próximo módulo segue:
password requisite pam_deny.so
Isso finalmente sobrescreverá o código de resultado anterior com deny e, portanto, negará a solicitação para alterar a senha.
Se for suficiente apenas alterar a senha do Kerbers, altere o requisito para o Kerberos em [success = 3 default = ignore] , o que ignoraria os próximos 3 módulos ( unix, lsass, deny) no sucesso e assim continuar com o pam_permit.so , que força a stack a finalmente retornar o sucesso.
Se, por outro lado, você tiver usuários com ambas as entradas / etc / shadow e no Kerberos, e quiser manter essas duas senhas sincronizadas, fica muito mais complicado acertar . Algo como seguir deve funcionar:
- Primeiro, tente alterar a senha do Kerberos.
- Se isso for bem-sucedido, tente opcionalmente também alterar a senha local do Unix em
/etc/shadow
. -
Caso contrário,
require
a alteração da senha do Unix será bem-sucedida.password [success=3 user_unknown=ignore default=ignore] pam_krb5.so minimum_uid=1000 password [success=3 default=ignore] pam_unix.so obscure use_authtok try_first_pass sha512 password [success=2 default=ignore] pam_lsass.so use_authtok try_first_pass password requisite pam_deny.so password [success=ok default=ignore] pam_unix.so obscure use_authtok use_first_pass sha512 password required pam_permit.so