| Version 3 (modified by cgelmini, 8 years ago) |
|---|
Inserimento di utenti in massa in LDAP
Vediamo come inserire un numero consistente di utenti dentro LDAP per mezzo di uno script in python preparato da Cristopher per l'occasione.
Testo sorgente dello script:
#!/usr/bin/env python
import sys,os
data = open(sys.argv[1]).readlines()
newdata = open("utenti-e-password.txt","w")
newdata.write("Utenti inseriti:\n")
newdata.write("Nome\t\tCognome\t\tUsername\t\tPassword\n")
for line in data:
line.strip()
name,surname,username,group = line[:-1].split(",")
name = name[1:-1]
surname = surname[1:-1]
fullname = name+" "+surname
username = username[1:-1]
group = group[1:-1]
p = os.popen("pwgen 8 1")
password = p.read()[:-1]
p.close()
print "Inserisco utente ", username
cmd = "smbldap-useradd -a -m -G \"%s\" -c \"%s\" -N \"%s\" -S \"%s\" %s" % (group, fullname, fullname, surname,username)
print "Eseguo ",cmd
os.system(cmd)
p = os.popen("smbldap-passwd %s" % username, "w")
p.write("%s\n" % password)
p.write("%s\n" % password)
p.close()
newdata.write("%s\t\t%s\t\t%s\t\t%s\n" % (name,surname,username,password))
newdata.close()
Tra un po' arrivano le note esplicative ;-) Salviamo in un file il codice qui sopra (utenti.py - ad esempio) il file si lancia da riga di comando con: python nomefile.py fileutenti fileutenti è il nome del file contenente la lista dei nostri utenti nel formato: "nome";"cognome";"nome_login";"gruppo1,gruppo2,gruppo3,gruppo4,ecc.(tutti i gruppi)" "antonio";"latrippa";"a_latrippa";"internet,studenti,cdrom,usbdev,ecc.(tutti i gruppi)"
andate con cautela e fate prima delle prove sul vostro server di testing che sicuramente avete predisposto a casa, scuola, ufficio ecc., ..... o no? have fun!!!!!!!!!!
Dimenticavo, vi trovate in un file utenti-e-password.txt la lista degli utenti e delle password assegnate. (Senno' era un casino ;-)))
