Atualmente estou migrando um ambiente CentOS para um ambiente Debian. Os usuários efetuam login pela rede usando o NIS. Eu esperava copiar /etc/shadow
do meu servidor antigo para o novo para que possamos oferecer continuidade aos usuários. Eu descobri dois problemas com isso:
-
Conflitos de ID do usuário Isso é facilmente resolvido adicionando 500 aos UIDs no arquivo CentOS
shadow
desde que o CentOS iniciou os UIDs em 500, enquanto o Debian os inicia em 1000.
-
Diferentes hashes de senha Isso é o que está me matando. Parece que o CentOS hashes suas senhas com
md5
enquanto o Debian usa sha-512
. Eu gostaria que os usuários pudessem fazer o login no sistema sem precisar me consultar.
Uma solução aceitável que encontrei depois de algumas pesquisas no Google foi a seguinte:
passwd -d uname
chage -d 0 uname
A primeira linha define uma senha vazia para o usuário uname
para que eles possam fazer o login diretamente. A segunda linha faz com que a senha de uname
expire, para que seja forçada a alterá-la no próximo login. Eu acho que isso é um bom compromisso.
Tudo isso é bom se o usuário efetuar login no servidor. Não funciona se o usuário tentar a autenticação do NIS a partir de uma caixa diferente. Eles ainda recebem a mensagem "Alteração de senha necessária", mas é imediatamente seguida por "Erro de manipulação de token de autenticação"; o que, eu suponho, é devido ao fato de que a alteração de senha é tentada via passwd
em vez de yppasswd
. Então, este é o picles que estou atualmente. Como posso obter continuidade sem forçar os usuários a fazer login no servidor?
EDITAR
-
Isso é semelhante ao que estou falando; exceto que não faz menção ao NIS.
-
Isso parece sugerir que é realmente impossível. Alguém pode refutar isso ou confirmá-lo?
EDIT 2
Eu só notei que quando os usuários tentam fazer o login no servidor, eles podem fazê-lo normalmente sem mensagens de erro. Em uma caixa diferente (para testar o NIS), mudei para root e tentei su
'em um dos usuários do NIS. É bem sucedido ao me dar um aviso que diz "Falha na autenticação (ignorada)". Eu estou supondo que isso vem da cadeia de políticas do PAM.