Capitolo 4. LDAP (Lightweight Directory Access Protocol)

Cos'è il protocollo LDAP?

Il protocollo LDAP (Lightweight Directory Access Protocol) è uno standard aperto per i servizi su una rete Intranet o Internet. Una directory gestita dal protocollo LDAP è simile a una guida telefonica e può gestire molte altre informazioni, ma allo stato attuale viene usato principalmente per associare nomi a numeri telefonici e a indirizzi e-mail. Le directory supportano grandi volumi di traffico, ma i dati in esse contenuti non variano spesso.

Il protocollo LDAP è molto più utile di una guida telefonica cartacea, poiché è stata ideato per supportare la diffusione attraverso i server LDAP in Internet, come accade per il Domain Name Server (DNS). Il DNS funziona come una rubrica tenendo traccia della coppia nome_simbolico/IP. I server DNS collegano le macchine in rete basandosi su nomi di dominio qualificati o sul tipo di servizio richiesto da un dominio, come lo scambio di posta. Senza i server DNS, gli hostname non potrebbero essere tradotti in indirizzi IP, richiesti per la comunicazione TCP/IP. In futuro l'LDAP potrà offrire lo stesso tipo di accesso globale per molti tipi di informazione sulle directory: oggi, l'LDAP è comunemente usato all'interno di una singola grande azienda, come un'università o una società, per gestire i servizi inerenti le directory.

LDAP è un sistema client-server. Un client LDAP si connette a un server LDAP e richiede le informazioni o fornisce i dati necessari per accedere a una directory. Il server risponde alla richiesta, invia la query a un altro server oppure accetta le informazioni da inserire nella directory, in base ai permessi dell'utente.

LDAP è noto anche come X.500 Lite. X.500 è uno standard internazionale per le directory, include numerose caratteristiche interessanti ma è molto complesso e richiede grandi risorse di elaborazione e uno stack OSI compatibile. L'LDAP, al contrario, funziona in modo corretto su ogni PC ed è compatibile con il protocollo TCP/IP. L'LDAP può accedere alle directory X.500 ma non supporta tutte le funzioni di X.500.

In questo capitolo viene trattata la configurazione e l'uso di OpenLDAP, un'implementazione open-source di LDAP. OpenLDAP comprende slapd (un server LDAP stand-alone), slurpd (un server stand-alone con propagazione di LDAP), librerie che implementano il protocollo LDAP, utility, tool, e semplici client.