PostHeaderIcon Como trocar a senha de um usuário em um shell script?

Vez em quando me deparo com amigos me perguntando como é possível, a partir de um shell script, alterar a senha de um usuário. Bem, então, acho que, apesar de ser uma dica bem simples, acho que publicá-la por aqui pode ser uma boa forma ajudar outros amigos perdidos na imensidão da Internet que, eventualmente, estejam precisando de uma solução rápida para esse problema.

Bem, existem diversas maneiras de lidar com essa questão. Entretanto, comento por aqui uma alternativa que, em minha opinião, é uma das mais simples de entender, utilizar e, principalmente, lembrar quando for necessário. Para ilustrar melhor o problema: suponha que você está desenvolvendo algum shell script que cria alguns usuários e nesse processo é necessário atribuir uma senha (aleatória ou não) a eles. Supondo que o username e a senha a ser atribuídas estão armazenados nas variáveis $MYUSER e $MYPASSWORD, respectivamente, basta inserir em seu shell script algo semelhante ao seguinte comando:

MYUSERNAME="fulano"
MYPASSWORD="novasenha"
...
echo "$MYPASSWORD" | passwd --stdin "$MYUSERNAME"

Pronto! Simples, não? Bem, acho que é isso. Até mais.

Leave a Reply