Corrigindo / etc / shadow com senhas md5 para senhas do sha512

1

Recentemente, atualizei um servidor Ubuntu com muitos usuários para uma versão recente de uma versão de 2008. O servidor usava hashes de senha md5 (por exemplo, as senhas shadow começaram com $ 1 $) e agora está configurado para usar o sha512.

Eu preferiria continuar usando o sha512, mas gostaria que os usuários antigos pudessem fazer o login parcialmente uma vez com a senha antiga e, em seguida, serem forçados a atualizar sua senha (mesmo que seja a mesma senha) gerando um sha512. No momento, as antigas senhas baseadas em md5 em / etc / shadow não permitirão o login do usuário (e apenas parecem estar senhas incorretas).

Parece que muitas pessoas deveriam ter feito isso antes; ainda não consigo ver como fazer isso, procurando nos locais comuns como /etc/pam.d/common-password nad /etc/login.defs. Também os usuários farão o login via ssh; e eu não tenho informações de contato de todos (e-mail ou não); e alguns fazem login com bastante frequência.

Qualquer ajuda? (Googling não parece dar boas soluções).

    
por dr jimbob 22.06.2011 / 05:41

1 resposta

1

Teoricamente, deve funcionar assim: Os usuários devem poder fazer o login com suas senhas MD5, e sempre que mudarem eles receberão uma senha SHA512.

Difícil julgar por que as pessoas não podem fazer login com sua senha MD5. Autenticação com as senhas SHA512 funciona? Se você mudar temporariamente para o MD5 e alterar a senha de um usuário de teste, poderá fazer login nele? Talvez você possa postar as linhas de não-comentários /etc/pam.d/common-auth para dar uma olhada. E, claro, arquivos de log poderiam ter alguma informação de fundo.

Para o seu desejo de exigir que as pessoas alterem sua senha, você pode definir a data da última alteração como 0 em / etc / shadow. Por exemplo. para o usuário foobar

sudo chage -d 0 foobar
    
por HelmuthB 22.06.2011 / 11:24