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!




DL
Nossa muito obrigado, faz horas que estou tentando resolver isso
Valeu pela ajuda!
O -crypt foi descontinuado no Openssl 3.0.0 . usando -6 como o amigo ai falou dá certo.
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 =)
tirado de openssl --help
outra coisa, por segurança para evitar quebra de caracteres, passe a expressao entre aspas duplas
Para facilitar a vida e o debug vc pode também passar para variáveis:
e passar a linha com a variável:
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.
Obrigado pelas dicas