useradd + passwd [RESOLVIDO]

1. useradd + passwd [RESOLVIDO]

Marcelo Bom Jardim
jesmarcelo

(usa CentOS)

Enviado em 22/11/2007 - 15:40h

Fala pessoal,

Como faço para criar um usuário e adicionar uma senha tudo com um comando só, sem que haja interação com o usuário?


  


2. MELHOR RESPOSTA

Elgio Schlemer
elgio

(usa OpenSuSE)

Enviado em 25/11/2007 - 17:11h

Acho que a idéia era um comando só, certo? Ou seja, sem ter que esperar perguntar para responder.

Complicado, pois o passwd não aceita redirecionar a entrada padrão. Veja que o comando useradd (não o adduser) aceita o parâmetro -p, só que precisas fornecer a senha já no formato hash!!

Hmmmm...

Ai, juntando as coisa até sai algo. Veja o utilitário mkpasswd.

echo teste | mkpasswd -s -H md5

gera o hash no formato MD5.

Então se passar para o useradd o parâmetro:

-p `echo senha|mkpasswd -s -H md5`

Poderá funcionar


3. Re: useradd + passwd [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 24/11/2007 - 04:10h

Com permissões para root, ou se usar mesmo o Debian usando o sudo em um terminal:

$ sudo adduser

Forneça as informações pedidas pelo sistema, se me lembro bem o ultimo passo será fornecer uma senha para o usuário criado e confirma-la mais duas vezes.


4. Re: useradd + passwd [RESOLVIDO]

Saulo Gomes
saulobr88

(usa Ubuntu)

Enviado em 02/06/2010 - 11:51h

Fala galera do VOL,

Pegando carona na dica do grande "elgio" fiz algumas pesquisas e encontrei a seguinte página:

http://www.cyberciti.biz/tips/howto-write-shell-script-to-add-user.html

No caso podemos usar o comando useradd com a opção -p, porém não usaremos o mkpasswd para criar o hash da senha e sim um módulo perl.

Exemplo de shell script:
#!/bin/bash
# Beginning of the file
password="secret"
pass=$(perl -e 'print crypt($ARGV[0], "password")' $password)
echo $pass
# End of file

o echo irá informar a senha criptografada, assim você poderá usar junto ao useradd, basta adicionar uma linha do comando:

useradd -p $pass login

onde $pass é a variável que contém a senha criptografada.

Obs.: Fiz esse procedimento no Debian Lenny.

Espero ter ajudado.
Viva o Linux !!!


5. Re: useradd + passwd [RESOLVIDO]

mariano
mariano_

(usa Debian)

Enviado em 30/09/2010 - 13:28h

No CentOS 5.5 criei um script que foi executado com sucesso, utilizando o passwd mesmo.

Vejam:

#!/bin/bash
#
# Autor: André Mariano
# lpic3bh@gmail.com
# Senior Level Linux Professional - LPIC-3 - www.lpi.org
#
# Este script foi criado apenas como um exemplo didático e cria os usuários aluno_000 até aluno_499.
# Foi testado com sucesso no CentOS release 5.5 (Final)
#
# Para alterar a quantidade de usuários a serem criados, basta alterar os intervalos dos comandos seq.
# Além de criar os usuários, ele também define a senha com o mesmo nome do usuário.
# Também pode-se alterar a senha a ser criada, bastando-se alterar a string do comando echo.
#
# c = define o intervalo das centenas
# d = define o intervalo das dezenas
# u = define o intervalo das unidades
#

for c in `seq 0 4`
do for d in `seq 0 9`
do for u in `seq 0 9`
do
useradd aluno_${c}${d}${u}
echo aluno_${c}${d}${u} | passwd aluno_${c}${d}${u} --stdin
done
done
done
exit 0








Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts