image

Acesse bootcamps ilimitados e +650 cursos

50
%OFF
Article image
Michael Azevedo
Michael Azevedo31/07/2022 09:29
Compartilhe

Solução para configurar senha ao adicionar novo usuário no Linux

  • #Linux

Na aula onde aprendemos a adicionar um novo usuário e configurar uma nova senha, é passado o seguinte comando:

# useradd convidado -c "Convidado" -m -s /bin/bash -p $(openssl passwd -crypt Senha123)

Entretanto, não funcionou quando fui testar no Ubuntu Server dentro da minha máquina virtual.

Portanto, venho apresentar uma solução que funcionou e espero que ajude quem estiver passando pela mesma dificuldade que enfrentei.

Solução:

# useradd convidado -c "Convidado" -m -s /bin/bash -p $(echo Senha123 | openssl passwd --stdin)

Observação: se você quiser configurar a senha do novo usuário sem que ela apareça no seu código (plaintext), então utilize o comando abaixo. Mas atenção, você terá que digitar manualmente a senha para cada novo usuário que adicionar no sistema.

# useradd convidado -c "Convidado" -m -s /bin/bash -p $(openssl passwd -1)

Espero ter ajudado e bons estudos!

Compartilhe
Comentários (4)
Ariel Juarez
Ariel Juarez - 19/02/2024 16:31

Valeu pela ajuda!

Ismael Brito
Ismael Brito - 31/07/2022 16:17

O -crypt foi descontinuado no Openssl 3.0.0 . usando -6 como o amigo ai falou dá certo.

Tarso Galvão
Tarso Galvão - 31/07/2022 13:17

a definição "-crypt" nao é mais usada, mas voce pode especificar qual cryptografia voce deseja usando outras chaves.

para usar o SHA passe "-6" ao invez de "-crypt" e todo o resto funciona normalmente =)

useradd convidado -c "Convidado" -m -s /bin/bash -p $(openssl passwd -6 Senha123)

tirado de openssl --help

outra coisa, por segurança para evitar quebra de caracteres, passe a expressao entre aspas duplas

useradd convidado -c "Convidado" -m -s /bin/bash -p "$(openssl passwd -6 Senha123)"

Para facilitar a vida e o debug vc pode também passar para variáveis:

SHELL="/bin/bash"
DEFAULT_PASS="$(openssl passwd -6 Senha123)"

e passar a linha com a variável:

useradd carlos -m -c "Carlos da Silva" -s ${SHELL} -p "${DEFAULT_PASS}"

note que ${SHELL} não requer aspas duplas ao ser chamado pois a variavel nao contém espaços.

${DEFAULT_PASS} funcionaria sem as aspas duplas, mas poderia ocorrer um erro de quebra de caracteres então elas entram por segurança para manter os espaços desejados.

Leandro Carvalho
Leandro Carvalho - 31/07/2022 09:54

Obrigado pelas dicas