Re: generador de passwords
On Tue, 12 Sep 2000, Jaime E. Villate wrote:
> Alberto Rodríguez wrote:
> > El problema es que no lo quiero hacer de manera interactiva. passwd
> > funciona de manera interactiva, y yo tengo que crear unas 1500 cuentas
> > de correo...
>
> Se me ocurre lo siguiente: si ya creaste las 1500 cuentas (o sea ya
> tienes un renglón /etc/passwd por cada usuario) usa el siguiente
> progrrama en perl:
>
> ################################################################
> #!/usr/bin/perl
> open PWD, '</etc/passwd';
> open USERS, '>>usuarios.txt';
> open ENCR, '>>passwd.txt';
> while (<PWD>) {
> ($user, $old, $info) = /^([^:]*):([^:]*)(.*)$/;
> $salt = join '', ('.', '/', 0..9, 'A'..'Z','a'..'z')[rand 64, rand
> 64];
> $pwd = join '',(0..9,'A'..'Z','a'..'z',';',':','.',',','+','-','=')
> [rand 69, rand 69, rand 69, rand 69, rand 69, rand 69,
> rand 69, rand 69];
> $encr = crypt $pwd, $salt;
> print USERS "$user\t$pwd\n";
> print ENCR "$user:$encr$info\n";
> }
> ##################################################################
>
> Este programa te va a crear dos ficheros: "psswd.txt", semejante a
> /etc/passwd, pero con las contraseñas modificadas (ya encriptadas,
> claro); el otro fichero es "usuarios.txt", que te dice cual es la nueva
> contraseña de cada uno (no encriptadas, claro).
>
> Después tendrás que ver que partes de passwd.txt substituyes en
> /etc/passwd (en tu caso solo te interesará sobstituir las líneas de los
> 1500 usuarios de e-mail), y les puedes informar su nueva contraseña
> usando usuarios.txt.
>
> Espero que esto te ayude.
> Jaime
>
>
> --
> Unsubscribe? mail -s unsubscribe debian-user-spanish-request@lists.debian.org < /dev/null
>
Tu script genera claves dentro de /etc/passwd lo cual no se suele usar,
porque todo el mundo puede copiarlo y luego procesarlo con fuerza bruta.
Lo mejor es usar shadow pero afortunadamente se puede pasar la claves
de /etc/passwd a /etc/shadow con:
PWCONV(8) PWCONV(8)
NAME
pwconv, pwunconv, grpconv, grpunconv - convert to and from
shadow passwords and groups.
El script debería terminar procesando /etc/passwd. con 'pwconv'.
Un saludo
Antonio Castro
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
/\ /\ Ciberdroide Informática (Tienda de Linux)
\\W// <<< http://www.ciberdroide.com >>>
_|0 0|_
+-oOOO--(___o___)--OOOo----------------------------------------------------+
| . . . . U U . . . . Antonio Castro Snurmacher acastro@ciberdroide.com |
| . . . . . . . . . . |
+()()()----------()()()----------------------------------------------------+
| Más de 1.000 sitios clasificados por temas sobre Linux en *Donde_Linux* |
| <<< http://www.ciberdroide.com/misc/donde/dondelinux.html >>> |
+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
Reply to: