+ Responder ao Tópico



  1. #1
    Visitante

    Padrão ### SCRIPT HTPASSSWD - Urgente ###

    Boa tarde Pessoal,

    Sou iniciante no shell script e gostaria da ajuda de vcs.
    Tenho 300 usuários para criar no htpasswd e senha.
    No entanto, é impossível de criar 1 a 1 na mão e ir confirmando a senha deles. Fiz esse script para ver se ele cria e depois busca a senha, mas não funcionou, alguém pode me ajudar nisso ?

    #!/bin/bash
    #antes checar se o arquivo usuario existe

    ARQ1=$(/etc/squid/usuarios)
    ARQ2=$(/etc/squid/passwd)

    for i in `cat $ARQ1`
    do
    uso=$(echo $i | cut -d: -f1)
    echo $uso
    done
    htpasswd -b $ARQ1 $ARQ2

    ***

    /etc/squid/usuarios = arquivo onde tenho a listagem de usuários a criar, no formato " usuario:usuario "
    /etc/squid/passwd = arquivo onde ele vai gerar. Ex: usuario:12$%^@y$

    Qualquer idéia será bem vinda,

    Abraço,

    Beto

  2. #2

    Padrão ### SCRIPT HTPASSSWD - Urgente ###

    Cara, faça o seguinte:

    [root@frikasoide root]# vi criar

    Dentro do arquivo "criar" ponha:

    #!/bin/bash
    for usuario in `cat usuarios.txt` ; do
    useradd -m -c $usuario -d /home/$usuario -s '/bin/false' $usuario
    echo $RANDOM > tmp
    passwd --stdin $usuario < tmp
    for senha in `cat tmp` ; do
    echo -e "$usuario: $senha" >> usuariosesenhas.doc
    done
    echo -e "$usuario" >> usuariosmailsemformato.txt
    done
    #FIM

    Repare que na primeira linha do script ele chama o arquivo usuarios.txt, esse arquivo é o que contém todos os usuários separados por ENTER. Então, ele criará os usuários no /home como /bin/false, no caso, isso se destina mais a usuários de e-mail, caso queira mudar :). Bom, depois ele jogará uma senha randomica para cada usuário e listará usuario e senha no arquivo usuariosesenhas.doc em formato para ser entendido por WORD. Logo depois faz também a listagem apenas dos usuários separados por ENTER no arquivo usuariosmailsemformato.txt.

    Bom, para executar, é simples, basta da: ./criar

    Espero ter ajudado...

  3. #3
    Beto
    Visitante

    Padrão Re: ### SCRIPT HTPASSSWD - Urgente ###

    Citação Postado originalmente por frikasoide
    Cara, faça o seguinte:

    [root@frikasoide root]# vi criar

    Dentro do arquivo "criar" ponha:

    #!/bin/bash
    for usuario in `cat usuarios.txt` ; do
    useradd -m -c $usuario -d /home/$usuario -s '/bin/false' $usuario
    echo $RANDOM > tmp
    passwd --stdin $usuario < tmp
    for senha in `cat tmp` ; do
    echo -e "$usuario: $senha" >> usuariosesenhas.doc
    done
    echo -e "$usuario" >> usuariosmailsemformato.txt
    done
    #FIM

    Repare que na primeira linha do script ele chama o arquivo usuarios.txt, esse arquivo é o que contém todos os usuários separados por ENTER. Então, ele criará os usuários no /home como /bin/false, no caso, isso se destina mais a usuários de e-mail, caso queira mudar . Bom, depois ele jogará uma senha randomica para cada usuário e listará usuario e senha no arquivo usuariosesenhas.doc em formato para ser entendido por WORD. Logo depois faz também a listagem apenas dos usuários separados por ENTER no arquivo usuariosmailsemformato.txt.

    Bom, para executar, é simples, basta da: ./criar
    Espero ter ajudado...
    Valeu garoto, obrigado pela dica, mas consegui resolver.
    Dei um for no arquivo de usuários principal e abaixo no arquivo de usuário principal e no arquivo de senha de cada um na ordem TAC...,

    Valeu mesmo,

    ( ),s

    Beto