[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: generador de passwords



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



Reply to: