[Tech] Generazione automatica utenti
Franco Bagnoli
bagnoli@dma.unifi.it
Lun 10 Dic 2001 20:51:40 CET
On Mon, 10 Dec 2001, Daniele Masini wrote:
> Il fatto è che non voglio generare utenti sulla macchina locale.
> Il problema è questo: ho una lista di utenti con i quali aggiornare una
> macchina remota. Tali utenti password non esistono e non devono esistere
> sulla macchina locale. La password di ogni utente la conosco in chiaro.
> Mi piacerebbe poter cifrare la password di ogni utente ed inviare coì via
> ssh alla macchina remota la lista utenti/password con cui la stessa
> provvederà ad aggiornarsi (tramite un apposito script in cron di root della
> macchina remota).
> Non mi piace mandare in chiaro le password.
penso che non ti piaccia lasciare le password in chiaro sulla macchina
remota, perché usando ssh le password viaggiano criptate.
Comunque al limite puoi farti uno scriptino perl (o con altri sistemi)
supponiamo che hai un file
utente1:password1
utente2:password2
ecc
allora un programmetto del tipo
#!/usr/bin/perl
while (<>){
chomp;
($user,$clearpw)= split /:/;
$pw = crypt $clearpw, '00';
print "$user:$pw\n";
}
da usare come filtro ti genera le password crittate. Se vuoi cambiare il
'sale' (la stringa '00', vedi perdoc -f crypt) fai pure, ma non credo che
aggiunga nulla alla sicurezza (infatti non ho mai capito a che serve...)
dopodiché sulla maccina remota sostituisci il campo password con uno
scritp del tipo
# leggo la tabella delle nuove password
while (<>) {
chomp;
($user, $pw) = split/:/;
$db{$user}=$pw;
}
#scorro il file password
while (@a = getpwent()) {
if (defined $db{$a[0]}) {
$a[1] = $db{$a[0]};
}
print join(@a, ':'), "\n";
}
che prende in input il file delle nuove password e
sputa un candidato per il nuovo file password.
Occhio che io non ho provato nulla, a tuo rischio e pericolo.
--
Franco Bagnoli (franchino) <bagnoli@dma.unifi.it>
Dipartimento di Matematica Applicata "G. Sansone" - Universita' di Firenze
Via S. Marta, 3 I-50139 Firenze, Italy. Tel. +39 0554796422, fax: +39 055471787
GPG Key fingerprint = 169D 9EA5 8FD3 7EDA E43A 9830 255F BCEC 0D63 3728
Maggiori informazioni sulla lista
flug-tech