Newsgroup: it.comp.os.linux.sys
Titolo: [TOSTO] Creare utenti in Active Directory da Linux

Non chiedetemi perché.  Dirò solo che la vita è strana e che comunque
è per una buona causa.
Devo creare degli utenti in Active Directory da Linux e finora ho
provato queste strade:
1) Creazione del record via ldapadd, password compresa (e corretta,
   nel senso che lo stesso modo di modifica della password funziona su
   utenti già esistenti).  Risultato: il record viene creato
   correttamente, ma l'utente non ha permessi di login neppure per il
   bind di un banale ldapsearch, men che meno per un smbclient -L ...
2) Creazione dell'utente via rpcclient sul DC, con il comando
   createdomuser, seguito da net ads password.  Risultato: net fa
   finta di impostare la password (o AD fa finta di accettarla), ma
   non viene impostata (niente bind LDAP, come sopra).
3) Tentativo di impostare la password dell'utente con kadmin, fallito.
4) Tentativo di creazione dell'utente via net ads user add, che
   sembrava il più promettente, fallito con un esplicati  vissimo
   `Server unwilling to perform'.       
C'è da dire, riguardo al 3), che la macchina Linux non ha fatto alcun
join al dominio AD.  Forse è rilevante.  Il tutto mi sembra
riportabile ad una mancata creazione del principal in kerberos: non è
possibile infatti neanche un `kinit <username>', che abbaia in
risposta `Clients credentials have been revoked while getting initial
credentials'.
Ok, ok, sono stato parco di transcript e log.  A parte che non voglio
affollare troppo con un argomento forse al limite dell'OT, prima di
ripetere tutti i passi trascrivendo diligentemente gli output vorrei
sapere se questa descrizione accende una lampadina per qualcuno.  Nei
limiti del ragionevole, vorrei tanto risolvere senza installare cygwin
e sshd sul DC giusto per eseguire un dsadd.  telnet, vnc &c non sono
un'opzione perché l'operazione va eseguita da un programma, non da un
umano.
Massimiliano
-- 
Dicette 'o pappece 'nfaccia 'a noce: damme tiempo ca' te spurtòse!
                                    (Proverbio napoletano)

 umano.
Non vorrei essere banale oltre che blasfemicamente OT ma io userei 
l'utility del resource
kit (non ricordo il nome addusers o qualcosa del genere) che permette 
di aggiungere utenti e gruppi definiti precedentemente in
un file ascii.
Pianificherei (ogni ora, ogni giorno, quando vuoi tu) un batch 
sul DC che aggiunge gli utenti dal file.
E il file? lo mandi sul DC in ftp dalla tua Linux box.
Ciao.

join al dominio AD.  Forse è rilevante.
E' fondamentale. Se non sei loggato su AD non puoi certo fare delle
modifiche al database degli utenti.
Io seguirei l'idea di generare un file con l'elenco degli utenti da
aggiungere, passare il file ad un DC AD e poi eseguire sul DC (o su
una macchina con privilegi appropriati) uno script che parsa il file e
aggiunge gli utenti.
Ciao,
luigi

 modifiche al database degli utenti.
Non e' necessario essere parte del dominio, e' sufficiente
fare un bind al database usando la password di administrator.
Davide
-- 
This is the first numerical problem I ever did.  It demonstrates the
power of computers:
Enter lots of data on calorie & nutritive content of foods.  Instruct
the thing to maximize a function describing nutritive content, with a
minimum level of each component, for fixed caloric content.  The
results are that one should eat each day:
	1/2 chicken
	1 egg
	1 glass of skim milk
	27 heads of lettuce.
		-- Rev. Adrian Melott

 è per una buona causa.
prova ad attaccarti con phpldapadmin, che è un ottimo tool e supporta
anche ad.

 ascii.
Non mi sembra per niente una cattiva idea.  La tengo a mente.
Grazie.
Massimiliano

fare un bind al database usando la password di administrator.
Avevo allora mal interpretato il termine "loggato". 
Pero' siamo sicuri che un host che non e' domain member (ovvero non e'
presente in AD nel container Computers o da qualche altra parte) puo'
fare modifiche ad AD? L'unico modo che mi viene in mente per aggirare
quest'ultima limitazione e' fingersi host Windows 9x, ma non puoi
fingerti host Winodws NT/2000/XP e non essere domain member, credo.
Ciao,
luigi

 fingerti host Winodws NT/2000/XP e non essere domain member, credo.
non dovrebbe essere necessario, perché ad dopo tutto è un albero ldap.

 fare modifiche ad AD?
Risolto.
http://lists.samba.org/archive/samba/2004-August/091134.html
-- 
"The desktop paradigm of windows-icons-menu-pointer (WIMP)..."
                               (Sacha Chou page on wearable computing)

 non dovrebbe essere necessario, perché ad dopo tutto è un albero ldap.
Più Kerberos...

 Più Kerberos...
kerberos è un protocollo di autenticazione, come sasl.
Ldap è un protocollo di archiviazione gerarchica dei dati.
Non sono la stessa cosa, lavorano a layer diversi e possono, ma non
devono, coesistere.

 Più Kerberos...
anche perché, altrimenti, come sarebbe possibile una cosa del genere?
http://phpldapadmin.sourceforge.net/images/screenshots/ms_ad_2.jpg

 
http://phpldapadmin.sourceforge.net/images/screenshots/ms_ad_2.jpg
Come sarebbe possibile cosa?  phpldapadmin è un browser LDAP, AD ha
una componente LDAP, phpldapadmin parla con la componente LDAP di AD.
Non ci vedo nulla di strano.
Massimiliano (che full time, con phpldapadmin, e gli ldaptools, e
libruby-ldap, e php4-ldap, ora gioca, ora lotta, ora con AD, ora con
slapd, da più di un mese e mezzo ormai...)