Ricerca nel sito web

Installa OpenLDAP Server e amministra con phpLDAPadmin in Debian/Ubuntu


LDAP sta per Lightweight Directory Access Protocol che può essere utilizzato in numerosi modi, ad esempio per l'autenticazione, la directory condivisa (per client di posta), la rubrica, ecc. Il Il protocollo LDAP può essere utilizzato per stabilire e archiviare qualsiasi tipo di informazione. Il server OpenLDAP ti dà la possibilità di accedere alle informazioni archiviate in una struttura ad albero.

In questo articolo ti mostreremo come installare e configurare un server OpenLDAP e come amministrarlo con phpLDAPadmin su Debian, Ubuntu e sistemi Linux Mint.

Installazione del server OpenLDAP in Linux

Per impostazione predefinita, il server OpenLDAP si trova nei repository sotto il pacchetto "slapd". Puoi installarlo facilmente con l'aiuto dello strumento di gestione dei pacchetti chiamato apt-get. Ma prima di installare il server OpenLDAP, assicurati che il tuo sistema sia aggiornato.

Durante l'installazione ti verrà chiesto di inserire una password per la voce admin nella tua directory LDAP. Inserisci una password complessa e confermala selezionando OK.

 
sudo apt-get update 
sudo apt-get install slapd ldap-utils

Configura il server OpenLDAP

Per configurare il server OpenLDAP è necessario modificare il file ldap.conf, che è memorizzato nella directory /etc. Per modificare il file ldap.conf è necessario un editor di testo come vim, nano ecc. Esegui il seguente comando per aprire ldap file di configurazione per la modifica.

sudo nano /etc/ldap/ldap.conf

L'output del comando precedente è mostrato nella sezione seguente.

#
LDAP Defaults
#

See ldap.conf(5) for details
This file should be world readable but not world writable.

#BASE   dc=example,dc=com
#URI    ldap://ldap.example.com ldap://ldap-master.example.com:666

#SIZELIMIT      12
#TIMELIMIT      15
#DEREF          never

TLS certificates (needed for GnuTLS)
TLS_CACERT      /etc/ssl/certs/ca-certificates.crt

Decommenta le righe BASE e URI, in modo da poterle modificare con il tuo nome di dominio e il tuo indirizzo IP. Poiché si tratta di un'installazione e configurazione di prova, utilizzerò tecmint123.com come nome di dominio.

#
LDAP Defaults
#

See ldap.conf(5) for details
This file should be world readable but not world writable.

BASE   dc=tecmint123,dc=com
URI    ldap://ldap.example.com ldap://ldap-master.example.com:666

#SIZELIMIT      12
#TIMELIMIT      15
#DEREF          never

TLS certificates (needed for GnuTLS)
TLS_CACERT      /etc/ssl/certs/ca-certificates.crt

Salvare il file ed eseguire il comando seguente per riconfigurare il pacchetto LDAP.

sudo dpkg-reconfigure slapd

Per costruire il DN di base della directory LDAP è necessario un nome di dominio DNS.

Inserisci il tuo nome di dominio DNS e premi Invio per confermarlo. Quindi ldap chiederà di inserire il nome dell'organizzazione da utilizzare nel DN di base della tua directory LDAP. Inserisci il nome della tua azienda o organizzazione e premi nuovamente Invio.

Dopo aver aggiunto il nome dell'organizzazione o della società, la configurazione del pacchetto richiederà di inserire la password per la voce admin nel tuo LDAP
directory. Devi inserire lapassword per l'amministratore che hai creato nei passaggi precedenti.

Dopo aver confermato la password dell'amministratore, devi selezionare il database. È possibile selezionare due database, il database BDB e HDB. Entrambi supportano le stesse opzioni di configurazione, utilizzano formati di archiviazione simili, ma poiché il database HDB aggiunge il supporto per la ridenominazione dei sottoalberi, è quello consigliato.

Puoi selezionare il database che ritieni possa funzionare meglio per te. Dopo aver deciso quale database utilizzare, premi Invio per confermare la selezione. Quindi ti verrà proposta un'altra domanda. Seleziona per rimuovere il database quando slapd viene eliminato.

Seleziona di nuovo e premi Invio.

Seleziona No e il server LDAP inizierà a funzionare.

[sudo] password for ravisaive: 
 * Stopping OpenLDAP slapd                                                                                       [ OK ] 
  Moving old database directory to /var/backups:
  - directory unknown... done.
  Creating initial configuration... done.
  Creating LDAP directory... done.
 * Starting OpenLDAP slapd                                                                                       [ OK ] 
Processing triggers for libc-bin ...

Per testare il server LDAP, viene utilizzato il comando ldapsearch -x.

ldapsearch -x

Produce il seguente output.

extended LDIF
#
LDAPv3
base <dc=tecmint123,dc=com> (default) with scope subtree
filter: (objectclass=*)
requesting: ALL
#

tecmint123.com
dn: dc=tecmint123,dc=com
objectClass: top
objectClass: dcObject
objectClass: organization
o: tecmint
dc: tecmint123

admin, tecmint123.com
dn: cn=admin,dc=tecmint123,dc=com
objectClass: simpleSecurityObject
objectClass: organizationalRole
cn: admin
description: LDAP administrator

search result
search: 2
result: 0 Success

numResponses: 3
numEntries: 2

Amministrazione LDAP con phpLDAPadmin

phpLDAPadmin è uno strumento di amministrazioneGUI per l'amministrazione del server LDAP. Questo strumento GUI ci aiuterà a interagire con il tuo server LDAP attraverso un'interfaccia web. È disponibile nei repository predefiniti, può essere installato con il comando apt-get.

Ma prima di installare phpLDAPadmin, devi avere il server web Apache e PHP installati e funzionanti. In caso contrario, installalo utilizzando il seguente comando.

sudo apt-get install apache2 php5 php5-mysql

Successivamente installa il pacchetto “phpldapadmin” come mostrato di seguito.

sudo apt-get install phpldapadmin

Nello stesso modo in cui abbiamo configurato il file ldap.conf, dobbiamo configurare i file di configurazione dell'interfaccia web phpldapadmin prima di utilizzarlo. Esegui il comando seguente per aprire il file phpldapadminconfig.php.

sudo nano /etc/phpldapadmin/config.php

Tutto quello che devi fare è sostituire i nomi di dominio con i tuoi valori. La parte di configurazione necessaria per questo caso si trova nella sezione "Definisci i tuoi server LDAP".

$servers = new Datastore();
$servers->newServer('ldap_pla'); 
$servers->setValue('server','name','Tecmint LDAP Server');
$servers->setValue('server','host','127.0.0.1'); 
$servers->setValue('server','base',array('dc=tecmint123,dc=com'));
$servers->setValue('login','bind_id','cn=admin,dc=tecmint123,dc=com');

Dopo aver finito di modificare il file di configurazione config.php, apri una scheda nel tuo browser web e digita l'http://ip_address_here/phpldapadminURL. Inserisci le tue credenziali di accesso ldap e fai clic su Accedi.

Collegamenti di riferimento

  1. Home page di OpenLDAP
  2. Pagina iniziale di phpLDAPadmin