sexta-feira, 28 de fevereiro de 2014

Mudando senha de usuário utilizando passwd sem interação ( shell script )

Já havia pesquisado como alterar a senha de um usuário do linux por script, e nunca encontrei a resposta. Este semestre um aluno questionou como realizar esta operação que quando redirecionamos a saída do comando utilizando o | (pipe ) apresenta no terminal erro no token de autenticação.
Lendo um pouco descobri (sem  fonte bibliográfica) que o passwd não aceita parâmetros/redirecionamentos por segurança, com um pouco de pesquisa encontrei aqui http://en.kioskea.net/faq/790-changing-password-via-a-script um meio de realizar esta alteração

Em meu teste ficou assim

senha='senhanova'
echo -e "${senha}\n${senha}" | ( passwd usuario )

Este tipo é muito importante em um exemplo que é necessário cadastrar 300 novos usuários com senhas aleatórias, você pode gerar um arquivo contendo o nome do usuário e a senha, e realizar o cadastro e a modificação da senha sem interação.

Nenhum comentário:

Postar um comentário