Eu encontrei a ferramenta chpasswd
. Com -e
aceita uma lista de usuários com suas senhas criptografadas para definir. É exatamente o que eu tenho procurado.
Estou migrando usuários de um servidor antigo para um novo. São apenas alguns usuários, queremos migrar apenas os ativos e reorganizar os grupos no processo, por isso estou fazendo isso manualmente. Um problema permanece: como posso migrar suas senhas para o novo servidor? Existe uma maneira melhor do que copiar hashes de senha de /etc/shadow
manualmente?
Eu encontrei a ferramenta chpasswd
. Com -e
aceita uma lista de usuários com suas senhas criptografadas para definir. É exatamente o que eu tenho procurado.
Como há poucas contas suficientes para você migrar manualmente, acho que erguer os hashes à mão é o caminho a ser seguido. É assim que eu faria pelo menos.
Bem, você não precisa fazer isso manualmente . Basta usar lastlog
para obter a lista de usuários que efetuaram login pelo menos uma vez, por exemplo, no ano anterior e, em seguida, grep
em /etc/shadow
:
lastlog -t 365 | gawk '{print $1}' | tail -n +2 | while read n; do \
grep -w $n /etc/shadow; done
Você também pode automatizar a criação do usuário no novo servidor, conforme descrito na minha resposta aqui .