Newsgroup: it.comp.os.linux.sys
Titolo: usare ldap.

Qualcuno ha esperienza nella gestione centralizzata degli accounts tramite
ldap?
Avrei bisogno di una piccola mano.
Grazie.

 Avrei bisogno di una piccola mano.
Bene: di cosa hai bisogno?
-- 
Luca Villani     NOC Manager  -  Wireless Solutions S.p.A.  (Dada Group)
http://www.wseurope.com
          via Castiglione 25, 40124 Bologna Italy
T:
+39 051 2966826
   F:
+39 051 2966800
   M:
+39 348 5298542
   UIN:76272621
GPG public key available

 Bene: di cosa hai bisogno?
:-) ti ho posto qualche domanda nel thread "postfix comn ldap o mysql" di
linux.software.

 Domanda.
Come prima cosa un aiuto nell'organizzazione delle directory.
Dovrei gestire gli account di un'azienda per vari servizi tra cui pop, imap,
proxy, smtp.
La radice sarebbe dc=miodominio,dc=it.
Pensavo di creare delle sottodirectory per ogni servizio, tipo:
ou=servizi,dc=miodominio,dc=it
cn=pop3,ou=servizi,dc=miodominio,dc=it, ecc. ecc.
e sotto ciascun servizio creare i vari account.
Dammi qualche suggerimento tu come hai proceduto? 


chiedi

 linux.software.
E` vero :-)


 e sotto ciascun servizio creare i vari account.
Come mai vuoi gestire il tutto in questo modo?
E` possibile, a patto che ogni organizationalPerson in ogni
organizationaUnit sia in realtà un alias di una organizationalPerson in una
organizationalUnit ben precisa (ad esempio, per usare un paragone trito e
ritrito, la organizationalUnit ou=People,dc=miodominio,dc=it), in modo da
non avere ridondanza dei dati.
Però non è un procedimento corretto in una ottica gerarchica, stai tentando
di rimapapre uan ottica relazionale su un albero, cosa che porta ad avere
dei problemi.
Piuttosto identifica delle objectClass e degli attributi ben precisi (magari
estendendo ad hoc lo schema) da aggiungere alle entry dei singoli utenti, e
poi istruisci i vari client ad effettuare ricerce su quegli attributi, è
molto più efficiente e consistente.


 ad avere dei problemi.
Pensavo di mettere sotto l'ou People tutti gli utenti dell'azienda
identificandoli attraverso le objectclass person, organizationalPerson,
inetorgPerson, mentre sotto l'ou servizi per un determinato account
utilizzerei la objectclass account e alias, come dici tu per non avere
ridondanza dei dati.
Ho pensato ad un'organizzazione del genere per una maggiore efficenza nelle
ricerche.
In questo modo per autorizzare un determinato account all'utilizzo del
servizio pop3, per esempio, anziche cercare attraverso tutto l'ou People
che contiene tutti i nominativi, cerca solo attraverso il
cn=pop3,ou=servizi,....... 
Perdonami per le mie domande banali ma sto cercando terra terra di capire
qualcosa di piu' di ldap per poterlo sfruttare al meglio. 

 Dammi qualche suggerimento tu come hai proceduto? 
pessima idea. fai una ou=Users e una ou=Groups, poi nelle informazioni
degli account degli utenti salvi le informazioni dei vari servizi.
Io ho uno schema mio ad hoc per salavare le informazioni di chi accede a
cosa.
Inoltre. vedendo un altro tuo post ti faccio notare che
1) inetorgPerson e simili sono per le rubriche
2) per avere account unix devi usare posixAccount
3) il tuo ragionamento sulla divisione in ou per velocizzare il tutto e'
sballatissimo, la velocita' la ottieni con gli indici, con la creazione
di ou.

 2) per avere account unix devi usare posixAccount
Gli accounts che devo gestire sono accounts virtuali per la posta
elettronica, gli attributi delle varie objectclass degli schema standard
distribuiti con slapd mi creano un po di confusione, non so per esempio
quale utilizzare per indicare la mail address di un account e quale
utilizzare per indicare la mailbox, informazioni utili a postfix per sapere
dove depositare i messaggi.


FASE UNO: scegliere il server. Netscape oramai e' stato acquisito da
RedHat. Puoi scegliere quindi tra RedHat Directory Server e OpenLdap.
Netscape aveva una bella GUI che ti aiuta non poco quando devi creare
tutti gli oggetti.
FASE DUE: cosa ci devi fare con LDAP? Utenti, sudo, device, tante altre
cose?
Puoi fare praticamente tutto. Interessante anche l'uso di sudo
centralizzato... oltre quello degli utenti. Cosi' come puo' essere
interessante gestire stampanti con ldap.
-- 
il capitano dei carabinieri chiede a un appuntato: "quanto fa 1+1"
l'appuntato: "3"
I colleghi in coro "gli dia un'altra chance. Gli dia un'altra chance!"
Il capitano ci riprova. Quanto fa "2+1".
l'appuntato: "3"
I colleghi in coro "gli dia un'altra chance, gli dia un'altra chance!"

 cose?
gestire degli account virtuali per l'uso della posta elettronica ma mi
servirebbero dei suggerimenti su come organizzare l'albero per non trovarmi
costretto a rifare tutto nel caso volessi ampliare l'utilizzo di ldap per
altri servizi.

 dove depositare i messaggi.
senti, elenca che software vuoi usare e come li vuoi usare.

 altri servizi.
forse può interessarti leggere questo
http://hannibal.solstice.nl/

 qualcosa di piu' di ldap per poterlo sfruttare al meglio.
Lo so, è dua all'inizio. :-(


 password e similari e il mio schema per il resto.
Ti sei preso uno OID da IANA?


 Ti sei preso uno OID da IANA?
si'. Con IANA e' gratuito, con ANSI paghi circa un migliaio di dollari.
mai capita questa differenza di costi.

 mai capita questa differenza di costi.
Se io vendo le zucchine a 5000 Euro l'una e qualcuno me le compra non vedo
dove sia il problema: si chiama libero mercato.
Se nessuno me le comprerà abbasserò i prezzi, altrimenti fallirò.
Poi si può discutere sul libero mercato e sull'opportunità o meno di usarlo
o di viverci, ma fino a che siamo in uno scenario di questo tipo non
dovresti stupirti.
Per inciso: quanti OID sono stati assegnati da IANA e quanti da ANSI?


 Per inciso: quanti OID sono stati assegnati da IANA e quanti da ANSI?
lo ignoro

Ottavio Campana wrote:

Postfix come smtp e courier o dovecot come pop e impap, sono indeciso tra i
due.
Nessun account fisico sulla macchina.
Se spedisco una mail a 
us...@miodominio.it
 postifx dovrebbe ricavare dalle
informazioni nel database ldap la mailbox di 
us...@miodominio.it
 e
depositare il messaggio.
Dovecot o courier, autenticano l'utente dopodiche' prelevano i messaggi
dalla sua mailbox. 

 Nessun account fisico sulla macchina.
gli account che crei nell'ldap esistono solo in quei servizi che
colleghi all'ldap stesso. Se non li agganci all'ldap non vedranno mai
gli utenti.

Ottavio Campana wrote:

questo lo so.............sto andando in
confusione.....dunque....ricapitolando......vorrei gestire account
virtuali, quindi senza creare account fisici sulla macchina, per vari
servizi, ora ho smtp e pop ma prevedo anche la gestione del proxy, samba,
ftp, ecc. ecc.
pensavo, come ho gia' detto di creare ou=servizi,dc=miodominio,dc=it,
dopodiche' 
cn=proxy,ou=servizi,dc=miodominio,dc=it;
cn=smtp,ou=servizi,dc=miodominio,dc=it;
ecc.
e sotto ciascun servizio mettere gli accounts:
uid=test.test,cn=smtp,ou=servizi,dc=miodominio,dc=it;
ecc.
in questo modo pero' ho ridondanza dei dati e mi e' stato sconsigliato.
allora metto gli account sotto ou=People,dc=miodominio,dc=it,
Per ciascun user utilizzo le objectclasses top, person, organizationalPerson
e inetOrgPerson.
In questo modo ho abbastanza versatilita', nel senso che dovrei avere tutti
gli attributi di cui necessito.
Attraverso i filtri potrei determinare se un account e' autorizzzato o no
all'utilizzo di un determinato servizio.
Mi servirebbe allora l'attributo ipServiceProtocol della objectclass
ipService.
Ma l'objectclass ipService va in conflitto con l'objectclass
inetOrgPerson.....porc....
 

 all'utilizzo di un determinato servizio.
si', questa e' la soluzione migliore.

 si', questa e' la soluzione migliore.
Pero' in questo caso ciascun accont avrebbe una stessa password per tutti i
servizi per cui puo' accedere?

 servizi per cui puo' accedere?
e non e' una cosa desiderata? Una da ricordare, se la cambi una volta la
cambi per sempre.

 degli account degli utenti salvi le informazioni dei vari servizi.
La ou=Groups per cosa potrebbe essere utile?

 cambi per sempre.
Ok, va bene.
Sono arrivato quindi alla decisione di mettere tutti gli utenti sotto
l'ou=People.
Come objectclass uso person, organizationalPerson, inetOrgPerson e
posixAccount.
La inetOrgPerson mi serve per l'attributo mail in cui posso indicare
l'indirizzo mail di ciascun utente.
Ora mi servirebbe un attributo in cui indicare i servizi per i quali un
determinato utente puo' accedere.
L'avevo individuato in ipServiceProtocol dell'objectclass ipService, ma va
in conflitto con inetOrgPerson.
Non voglio crearmi schemi ad hoc perche' non ne sono capace, se possibile
meglio utilizzare quelli standard solo che succede questo: se ti serve un
attributo specifico e per questo devi aggiungere un altra objectclass puo'
capitare che questa vada in conflitto con quelle gia' esistenti.
E' un problema.  

 E' un problema.  
imho farsi uno schema e' la cosa migliore.

try wrote:
 > La ou=Groups per cosa potrebbe essere utile?
per gestire i gruppi? Per esempio se usi anche samba, i gruppi fanno comodo.

Mandi! try
  In chel dí si favelave...
t> E' un problema.  
..per le porcate (che poi alla fine tutti usano ;) c'è sempre
ExtensibleObject. ;)
Credo che convenga usare quello, almeno fino a che le proprie porcate
non hanno raggiunto il numero e la struttura degna di un proprio
schema.
-- 
  La tua tana sta in collina, Dr. Dobermann, seimilioni a metro quadro
  e tua moglie sembra proprio una regina,
  pero` e` la moglie di un ladro.			(F. De Gregori)

 C'e' qualcosa in particolare da seguire per farsi uno schema?
io ho semplicemente usato come esempio quelli che arrivano con openldap.
se hai una minima idea di programmazione ad oggetti intuisci facilmente
come si fa.
Occhio a cambiare gli oid, richiedine di tuoi o rischierai di fare un
gran casino.

Mandi! try
  In chel dí si favelave...
t> Solo che, come ho detto prima, nel momento in cui mi trovo nella
t> necessita' di utilizzare alcuni attributi facenti parte di objectclass
t> diverse non e' raro il caso in cui queste objectclass vanno in
t> conflitto tra loro.
..questa cosa non č rara, solo questo volevo dire.
Il consiglio č quello di usare extensibeobject, e una volta capito
veramente quali e quanti attributi in piů servono, crearsi uno schema
ad hoc. Tutto qui.
-- 
  Le camere deliberano lo stato di guerra e conferiscono al Governo
  i poteri necessari.				(art. 78 Costituzione)

 esempio.
se la cosa ti consola, mai arrivato spam o telefonate da iana a casa mia.

 E' troppo se chiedo di poter dare un'occhiata a quello che hai fatto tu?
ehm... 'nsomma.... un pochino si'.....
ma ti dico, e' proprio come gli altri schemi di ldap.

Ottavio Campana wrote:

E' necessario richiederli a iana?
In fondo il mio schema sarebbe solo per un uso interno.


li puoi anche buttare alla cazzo. Pero' stai attento, rischi in futuro
di avere delle collisioni con altri schemi. Se proprio ti schifa
richiederli assicurati di usare gli iod di una qualche azienda ignota e
prega di non dover mai usare i loro schemi nel tuo sistema ldap.
E' come voler usare degli indirizzi ip non provati per la propria rete.
funziona tutto, ma ti tagli fuori da una parte di internet. Il gioco
vale la candela? imho no.