Com configurar el client LDAP per connectar l'autenticació externa


LDAP (abreviatura de Lightweight Directory Access Protocol) és un conjunt de protocols estàndard de la indústria molt utilitzat per accedir als serveis de directori.

En termes senzills, un servei de directori és una base de dades centralitzada, basada en xarxa, optimitzada per a l'accés de lectura. Emmagatzema i proporciona accés a la informació que s'ha de compartir entre aplicacions o està altament distribuïda.

Els serveis de directori tenen un paper important en el desenvolupament d'aplicacions d'Internet i intranet, ja que us ajuden a compartir informació sobre usuaris, sistemes, xarxes, aplicacions i serveis a tota la xarxa.

Un cas d'ús típic de LDAP és oferir un emmagatzematge centralitzat de noms d'usuari i contrasenyes. Això permet que diverses aplicacions (o serveis) es connectin al servidor LDAP per validar usuaris.

Després de configurar un servidor LDAP que funcioni, haureu d'instal·lar biblioteques al client per connectar-hi. En aquest article, mostrarem com configurar un client LDAP per connectar-se a una font d'autenticació externa.

Espero que ja tingueu un entorn de servidor LDAP que funcioni, si no, configureu el servidor LDAP per a l'autenticació basada en LDAP.

Com instal·lar i configurar el client LDAP a Ubuntu i CentOS

Als sistemes client, haureu d'instal·lar alguns paquets necessaris perquè el mecanisme d'autenticació funcioni correctament amb un servidor LDAP.

Primer comenceu instal·lant els paquets necessaris executant l'ordre següent.

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

Durant la instal·lació, se us demanarà detalls del vostre servidor LDAP (proporcioneu els valors segons el vostre entorn). Tingueu en compte que el paquet ldap-auth-config que s'instal·la automàticament fa la majoria de les configuracions en funció de les entrades que introduïu.

A continuació, introduïu el nom de la base de cerca LDAP, podeu utilitzar els components dels seus noms de domini amb aquesta finalitat, tal com es mostra a la captura de pantalla.

També escolliu la versió LDAP que voleu utilitzar i feu clic a D'acord.

Ara configureu l'opció per permetre que les utilitats de contrasenya que utilitzin pam es comportin com si canvieu les contrasenyes locals i feu clic a Sí per continuar.

A continuació, desactiveu el requisit d'inici de sessió a la base de dades LDAP mitjançant l'opció següent.

Definiu també el compte LDAP per a root i feu clic a D'acord.

A continuació, introduïu la contrasenya que voleu utilitzar quan ldap-auth-config intenti iniciar sessió al directori LDAP mitjançant el compte LDAP per a root.

Els resultats del diàleg s'emmagatzemaran al fitxer /etc/ldap.conf. Si voleu fer alguna modificació, obriu i editeu aquest fitxer amb el vostre editor de línia d'ordres preferit.

A continuació, configureu el perfil LDAP per a NSS executant-lo.

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

A continuació, configureu el sistema perquè utilitzi LDAP per a l'autenticació actualitzant les configuracions de PAM. Al menú, seleccioneu LDAP i qualsevol altre mecanisme d'autenticació que necessiteu. Ara hauríeu de poder iniciar sessió amb credencials basades en LDAP.

$ sudo pam-auth-update

En cas que vulgueu que el directori d'inici de l'usuari es creï automàticament, haureu de realitzar una configuració més al fitxer PAM de sessió comuna.

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

Afegiu-hi aquesta línia.

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

Deseu els canvis i tanqueu el fitxer. A continuació, reinicieu el servei NCSD (Name Service Cache Daemon) amb l'ordre següent.

$ sudo systemctl restart nscd
$ sudo systemctl enable nscd

Nota: Si feu servir la replicació, els clients LDAP hauran de fer referència a diversos servidors especificats a /etc/ldap.conf. Podeu especificar tots els servidors en aquest formulari:

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

Això implica que la sol·licitud s'esgotarà i si el proveïdor (ldap1.example.com) no respon, intentarà contactar amb el consumidor (ldap2.example.com) per processar-lo.

Per comprovar les entrades LDAP d'un usuari concret des del servidor, executeu l'ordre getent, per exemple.

$ getent passwd tecmint

Si l'ordre anterior mostra detalls de l'usuari especificat del fitxer /etc/passwd, la vostra màquina client ara està configurada per autenticar-se amb el servidor LDAP, hauríeu de poder iniciar sessió amb credencials basades en LDAP.

Configureu el client LDAP a CentOS 7

Per instal·lar els paquets necessaris, executeu l'ordre següent. Tingueu en compte que en aquesta secció, si feu servir el sistema com a usuari administratiu no root, utilitzeu l'ordre sudo per executar totes les ordres.

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

A continuació, activeu el sistema client per autenticar-se mitjançant LDAP. Podeu utilitzar la utilitat authconfig, que és una interfície per configurar els recursos d'autenticació del sistema.

Executeu l'ordre següent i substituïu example.com pel vostre domini i dc=example,dc=com pel vostre controlador de domini LDAP.

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

A l'ordre anterior, l'opció --enablemkhomedir crea un directori d'inici d'usuari local a la primera connexió si no n'hi ha cap.

A continuació, comproveu si les entrades LDAP d'un usuari concret del servidor, per exemple, l'usuari tecmint.

$ getent passwd tecmint

L'ordre anterior hauria de mostrar els detalls de l'usuari especificat del fitxer /etc/passwd, la qual cosa implica que la màquina client ara està configurada per autenticar-se amb el servidor LDAP.

Important: si SELinux està habilitat al vostre sistema, heu d'afegir una regla que permeti crear directoris d'inici automàticament mitjançant mkhomedir.

Per obtenir més informació, consulteu la documentació adequada del catàleg de documents del programari OpenLDAP.

LDAP, és un protocol molt utilitzat per consultar i modificar un servei de directori. En aquesta guia, hem mostrat com configurar un client LDAP per connectar-se a una font d'autenticació externa, a les màquines client Ubuntu i CentOS. Podeu deixar qualsevol pregunta o comentari que tingueu utilitzant el formulari de comentaris que trobareu a continuació.