password não funciona com useradd -p

3

Estou executando o Ubuntu 14.04 LTS. Eu corri o seguinte comando para criar um usuário

$sudo useradd -m -p password1 guest_user

e depois tentou mudar para o usuário com

$su guest_user

Mas não consegui entrar com a senha1

Estou faltando alguma coisa? Eu suponho que eu faça o login com a senha 1 ou algo mais como a opção -p diz na página man do useradd

 -p, --password PASSWORD
           The encrypted password, as returned by crypt(3). The default is to disable the password.

           Note: This option is not recommended because the password (or encrypted password) will be
           visible by users listing the processes.

           You should make sure the password respects the system's password policy.

O acima me confunde porque quando eu digito o comando

useradd -m -p password1

a senha password1 é visível na linha de comando. Como torná-lo invisível no comando acima?

    
por user2065276 01.09.2015 / 16:40

2 respostas

3

De man useradd :

-p, --password PASSWORD
           The encrypted password, as returned by crypt(3). The default is to disable the password.

Como você pode ver, a opção PASSWORD with -p é a senha criptografada retornada pela função de biblioteca crypt(3) .

Se você usar -p password1 , o sistema considerará este texto simples password1 como a entrada de senha de sombra criptografada em /etc/shadow .

A solução é usar a senha criptografada aqui com -p , que é inseguro , você deve definir a senha interativamente.

Por exemplo, crie o usuário primeiro:

sudo useradd -m -s /bin/bash guest_user

Agora defina a senha:

sudo passwd guest_user

Ou use melhor adduser :

sudo adduser --gecos '' guest_user
    
por heemayl 01.09.2015 / 17:01
1

Tente adicionar um argumento após cada opção que você deseja usar. Por exemplo:

    useradd -m guest_user -p passwd1

Como a página do manual useradd sugere, adicionar sua senha dessa maneira não é considerado seguro porque é transmitido em texto simples. Por uma alternativa, tente:

    sudo useradd -m guest_user

e depois:

    sudo passwd guest_user

Duas ressalvas:

  • a linha que começa com: NAME_REGEX = em: /etc/adduser.conf pode proibir o uso do caractere de sublinhado "_" para nomes de usuários;

  • pode haver requisitos de complexidade de senha definidos em: /etc/pam.d/common-password que exigem uma senha mais complexa.

por marshki 01.09.2015 / 17:54