Ricerca nel sito web

Come configurare il client LDAP per connettere l'autenticazione esterna


LDAP (abbreviazione di Lightweight Directory Access Protocol) è un insieme di protocolli standard di settore ampiamente utilizzato per l'accesso ai servizi di directory.

Un servizio di directory in termini semplici è un database centralizzato basato sulla rete ottimizzato per l'accesso in lettura. Memorizza e fornisce l'accesso alle informazioni che devono essere condivise tra applicazioni o sono altamente distribuite.

I servizi di directory svolgono un ruolo importante nello sviluppo di applicazioni Intranet e Internet poiché consentono di condividere informazioni su utenti, sistemi, reti, applicazioni e servizi in tutta la rete.

Un tipico caso d'uso di LDAP è offrire un'archiviazione centralizzata di nomi utente e password. Ciò consente a varie applicazioni (o servizi) di connettersi al server LDAP per convalidare gli utenti.

Dopo aver configurato un server LDAP funzionante, dovrai installare le librerie sul client per connetterti ad esso. In questo articolo mostreremo come configurare un client LDAP per connettersi a una fonte di autenticazione esterna.

Spero che tu abbia già un ambiente server LDAP funzionante, in caso contrario configura il server LDAP per l'autenticazione basata su LDAP.

Come installare e configurare il client LDAP in Ubuntu e CentOS

Sui sistemi client, sarà necessario installare alcuni pacchetti necessari per far funzionare correttamente il meccanismo di autenticazione con un server LDAP.

Configura il client LDAP in Ubuntu 16.04 e 18.04

Per prima cosa inizia installando i pacchetti necessari eseguendo il seguente comando.

sudo apt update && sudo apt install libnss-ldap libpam-ldap ldap-utils nscd

Durante l'installazione ti verranno richiesti i dettagli del tuo server LDAP (fornisci i valori in base al tuo ambiente). Tieni presente che il pacchetto ldap-auth-config che viene installato automaticamente esegue la maggior parte delle configurazioni in base agli input immessi.

Successivamente, inserisci il nome della base di ricerca LDAP, puoi utilizzare i componenti dei loro nomi di dominio per questo scopo come mostrato nello screenshot.

Scegli anche la versione LDAP da utilizzare e fai clic su Ok.

Ora configura l'opzione per consentirti di creare utilità per le password che utilizzano pam in modo che si comportino come se stessi modificando le password locali e fai clic su per continuare.

Successivamente, disabilita i requisiti di accesso al database LDAP utilizzando l'opzione successiva.

Definisci anche l'account LDAP per root e fai clic su Ok.

Successivamente, inserisci la password da utilizzare quando ldap-auth-config tenta di accedere alla directory LDAP utilizzando l'account LDAP per root.

I risultati della finestra di dialogo verranno archiviati nel file /etc/ldap.conf. Se desideri apportare modifiche, apri e modifica questo file utilizzando il tuo editor della riga di comando preferito.

Successivamente, configura il profilo LDAP per NSS eseguendo.

sudo auth-client-config -t nss -p lac_ldap

Configurare quindi il sistema per utilizzare LDAP per l'autenticazione aggiornando le configurazioni PAM. Dal menu, scegli LDAP e qualsiasi altro meccanismo di autenticazione di cui hai bisogno. Ora dovresti essere in grado di accedere utilizzando le credenziali basate su LDAP.

sudo pam-auth-update

Nel caso in cui si desideri che la directory home dell'utente venga creata automaticamente, è necessario eseguire un'ulteriore configurazione nel file PAM della sessione comune.

sudo vim /etc/pam.d/common-session

Aggiungi questa riga al suo interno.

session required pam_mkhomedir.so skel=/etc/skel umask=077

Salva le modifiche e chiudi il file. Quindi riavviare il servizio NCSD (Name Service Cache Daemon) con il seguente comando.

sudo systemctl restart nscd
sudo systemctl enable nscd

Nota: se utilizzi la replica, i client LDAP dovranno fare riferimento a più server specificati in /etc/ldap.conf. È possibile specificare tutti i server in questo modulo:

uri ldap://ldap1.example.com  ldap://ldap2.example.com

Ciò implica che la richiesta scade e se il Fornitore (ldap1.example.com) non risponde, il Consumatore (ldap2 .example.com) tenterà di essere raggiunto per elaborarlo.

Per controllare le voci LDAP per un determinato utente dal server, eseguire ad esempio il comando getent.

getent passwd tecmint

Se il comando precedente mostra i dettagli dell'utente specificato dal file /etc/passwd, il tuo computer client è ora configurato per l'autenticazione con il server LDAP, dovresti essere in grado di accedere utilizzando credenziali basate su LDAP .

Configura il client LDAP in CentOS 7

Per installare i pacchetti necessari, esegui il comando seguente. Tieni presente che in questa sezione, se stai utilizzando il sistema come utente amministrativo non root, utilizza il comando sudo per eseguire tutti i comandi.

yum update && yum install openldap openldap-clients nss-pam-ldapd

Abilitare quindi il sistema client all'autenticazione tramite LDAP. Puoi utilizzare l'utilità authconfig, che è un'interfaccia per la configurazione delle risorse di autenticazione del sistema.

Esegui il comando seguente e sostituisci example.com con il tuo dominio e dc=example,dc=com con il tuo controller di dominio LDAP.

authconfig --enableldap --enableldapauth --ldapserver=ldap.example.com --ldapbasedn="dc=example,dc=com" --enablemkhomedir --update

Nel comando precedente, l'opzione --enablemkhomedir crea una directory home dell'utente locale alla prima connessione se non ne esiste alcuna.

Successivamente, verifica se le voci LDAP per un particolare utente provengono dal server, ad esempio l'utente tecmint.

getent passwd tecmint

Il comando precedente dovrebbe visualizzare i dettagli dell'utente specificato dal file /etc/passwd, il che implica che la macchina client è ora configurata per l'autenticazione con il server LDAP.

Importante: se SELinux è abilitato sul tuo sistema, devi aggiungere una regola per consentire la creazione automatica delle directory home tramite mkhomedir.

Per ulteriori informazioni, consultare la documentazione appropriata dal catalogo documenti del software OpenLDAP.

Riepilogo

LDAP è un protocollo ampiamente utilizzato per interrogare e modificare un servizio di directory. In questa guida, abbiamo mostrato come configurare un client LDAP per connettersi a una fonte di autenticazione esterna, su macchine client Ubuntu e CentOS. Puoi lasciare eventuali domande o commenti che potresti avere utilizzando il modulo di feedback qui sotto.