Konfigurieren Sie Linux-Clients für die Authentifizierung mit OpenLDAP

23.05.2015

Dies ist der zweite Teil unserer vorherigen Tutorial, mit dem Titel**: Installation und Konfiguration von OpenLDAP-Server auf Debian und Ubuntu-Systemen** . In diesem HowTo zeigen wir, wie man Linux-Clients so konfigurieren, dass sie sich mit einem OpenLDAP-Server authentizieren. Ich habe dieses Handbuch auf Debian und Ubuntu Desktop 8 15.04 Desktop getestet, bei welchem es perfekt und ohne Probleme funktioniert. Wenn Sie irgendwelche Probleme finden, können Sie mich gerne informieren. Ich werde es dann prüfen und dieses Tutorial ASAP aktualisieren.

Für den Zweck dieses Tutorials verwenden wir mit Debian 8 MATE Desktop als LDAP-Client.

Ihr Client-System Details:

  • Betriebssystem: Debian 8 MATE Desktop
  • IP Address: 192.168.1.101/24

Meine LDAP Server Details:

  • Betriebssystem: Ubuntu 15.04 Server
  • IP Address: 192.168.1.195/24

Konfigurieren Sie die Linux-Clients für die Authentifizierung mit OpenLDAP

Hier werde ich dieses Tutorial in zwei Abschnitte aufgeteilt. Erstens, wir werden sehen, wie LDAP-Client auf Debian 8 zu installieren, und dann werden wir sehen, wie die Konfiguration Debian 8 Desktop zu authentifizieren.

Ich werde dieses Tutorial in zwei Abschnitte aufteilen. Im ersten werden wir sehen wie man einen LDAP-Client auf Debian 8 installiert und danach zeige ich in Schritt zwei wie man ein Debian 8 Desktop System für die Autentifizierung konfiguriert

1. Installieren Sie den LDAP-Client

Ich gehe davon aus, dass Sie über eine funktionierende LDAP-Server bereits gehabt haben. Wenn nicht, siehe den Link oben zum OpenLDAP-Server-Setup in Debian und Ubuntu und seine Derivate.

Installieren der benötigten Pakete für unserem LDAP-Client.

Wechseln Sie zu Root-Benutzer:

sudo su

Oder

su

Führen Sie den folgenden Befehl auf dem Terminal aus um die LDAP-Client-Pakete zu installieren.

apt-get install libnss-ldap libpam-ldap nscd

Während der Installation werden Sie aufgefordert, eine Reihe von Fragen zu beantworten. Lesen Sie diese sorgfältig durch und geben dann die entsprechenden Werte ein.

Geben Sie die LDAP-Server-IP-Adresse, wie in der Abbildung unten gezeigt.

openldap-client-config

Es ist Ihr LDAP-Server URI als geben ldap: // ip-adresse-des-ldapserver /. Verwenden von IP-Adresse ist immer empfehlenswert, um Fehler zu vermeiden, falls der Domain Name Services nicht verfügbar ist.

Geben Sie dann den zuvor definierten Namen der Suchbasis an. Dieser Wert sollten zu den Werten ihrer LDAP-Server Konfigurations Werten unter /etc/phpldaadmin/config.php passen. In meinem Fall ist es dc = linuxuser, dc = local .

openldap-client-config

Wählen Sie LDAP in der Protokoll Version 3 . Es wird empfohlen, immer die höchste verfügbare Version zu verwenden.

openldap-client-config

Geben Sie nun die LDAP-Admin Account Daten ein

In unserem Fall war es: cn = admin, dc = linuxuser, dc = local.

openldap-client-config

Geben Sie anschließend das LDAP-Administrator-Passwort ein:

 

Im nächsten Fenster wird uns gesagt, dass wir die nsswitch.conf Datei manuell bearbeiten müssen.

Klicken Sie auf OK, um fortzufahren.

openldap-client-config

Nun ist das libnss-ldap -Paket vollständig installiert. Jetzt sollten wir die gleichen Parameter für das Paket libpam-ldap vergeben.

D.h. die oben genannten Fragen wiederholen sich für libpam-ldap.

Wir benötigen es jedoch nicht das der Client LDAP-Admin Account sich als lokaler root verhält, weswegen wir Nein auswählen.

openldap-client-config

 

Wählen Sie Nein.

openldap-client-config

Nun wollen wir das Packet libnss-ldap neu konfigurieren um die debconf-Konfiguration zu verbessern indem wir den folgenden Befehl eingeben:

dpkg-reconfigure libnss-ldap

Stellen Sie sicher, dass die LDAP-Server URL korrekt ist.

openldap-client-config

Stellen Sie anschließend sicher, dass die LDAP-Server Suchbasis Angaben stimmen:

openldap-client-config

Jetzt wird angegeben welche LDAP-Version Verwendung findet.

openldap-client-config3

Die LDAP-Datenbank erfordert keine Anmeldung, daher wählen wir Nein.

openldap-client-config

Wählen Sie Nein.

openldap-client-config

Auf die nächste Frage wählen Sie ebenfalls Nein.

openldap-client-config

Schließlich wählen Sie zum Abschluss OK.

openldap-client-config

Das war es. Jetzt haben wir die LDAP-Client-Pakete installiert

 

 

2. Konfigurieren Sie LDAP-Client

Wir müssen nun unser Client-System updaten indem wir die Konfigurationsdatein anpassen, um nach LDAP-Server zu suchen.

Um dies zu tun, bearbeiten wir zunächst die Datei /etc/ldap/ldap.conf ,

vim /etc/ldap/ldap.conf

Kommentieren Sie die folgenden Zeilen ein und geben Sie Ihren LDAP-Server suchen BASE und URI wie unten dargestellt.

BASE dc = linuxuser, dc = local URI ldap: //192.168.1.195

Bearbeiten Sie anschließend die Datei /etc/nsswitch.conf ,

vim /etc/nsswitch.conf

Finden Sie die folgenden drei Zeilen und passen sie wie unten gezeigt.

passwd: compat ldap
group: compat ldap
shadow: compat ldap

netgroup: ldap

Jetzt müssen wir den nscd-Dienst neu starten:

systemctl nscd starten

Auf Ubuntu 14.10 / Debian 7 und früheren Versionen:

service nscd restart

PAM-Konfiguration

Jetzt sollten wir die PAM-Konfiguration überprüfen. Während libnss-ldap-Installation wird die PAM-Konfiguration geändert.  Hierbei ist es ratsam sicherzustellen und zu überprüfen, dass die PAM-Konfigurationsdateien so aussehen wie unten.

Bearbeiten Datei /etc/pam.d/common-auth,

vim /etc/pam.d/common-auth

Achten Sie darauf, das diese Datei die folgenden Zeilen enthält.

auth [success = 2 default = ignorieren] pam_unix.so nullok_secure try_first_pass auth [success = 1 default = ignorieren] pam_ldap.so use_first_pass

auth requisite pam_deny.so

auth required pam_permit.so

Bearbeiten der Datei /etc/pam.d/common-account ,

vim /etc/pam.d/common-account

account [success = 2 new_authtok_reqd = getan default = ignorieren] pam_unix.so
account [success = 1 default = ignorieren] pam_ldap.so

auth requisite pam_deny.so

auth    required   pam_permit.so

Bearbeiten sie nun die Datei  /etc/pam.d/common-password ,

vim /etc/pam.d/common-password

account [success=2 new_authtok_reqd=done default=ignore]        pam_unix.so account [success=1 default=ignore]      pam_ldap.so

account requisite                       pam_deny.so

account required                        pam_permit.so

Bearbeiten jetzt die Datei /etc/pam.d/common-session,

vim /etc/pam.d/common-session

Fügen Sie die folgende Zeile am unteren Rand.

Sitzung erforderlich pam_mkhomedir.so

Die obige Zeile wird ein Home-Verzeichnis für LDAP-Benutzer, der nicht über Home-Verzeichnis, wenn die LDAP-Server anmelden zu erstellen.

Bearbeiten Datei  /etc/pam.d/common-session-noninteractive ,

mcedit /etc/pam.d/common-session-noninteractive

Sitzung [Default = 1] pam_permit.so

Sitzung erforderliche pam_deny.so

Sitzung erforderlich pam_permit.so

Sitzung erforderlich pam_unix.so session optional pam_ldap.so

Starten Sie nscd-Dienst neu um die Änderungen zu speichern.

systemctl nscd starten

Auf Debian-7 / Ubuntu 14.10 und niedrigeren Versionen lautet der Befehl:

Service nscd Neustart

Starten Sie den Client-System und versuchen, mit Ihrem LDAP-Benutzer vom Client-System anmelden.

Einloggen, um LDAP-Server

Jetzt haben wir unsere Client konfiguriert und sind in der Lage, uns am OpenLDAP-Server anmelden zu können. Ok dann wollen wir das gleich mal praktisch probieren. Melden Sie sich gleich mit einem beliebigen OpenLDAP-Benutzer an, welcher zuvor an einem OpenLDAP Server erstellt wurde. Bitte beachten Sie, dass dieser OpenLDAP-Benutzer nicht auf dem lokalen Client-System existieren bzw. lassen sie sich deshalb nicht verwirren.

Ich habe bereits einen Benutzer namens “linuxuser” auf meinem OpenLDAP-Server erstellt.

(Siehe den Abschnitt Beispielkonfiguration in dem anderen OpenLDAP Tutorial.

So, nun lassen Sie uns mit dem im anderen Tutorial angelegten User “user “linuxuser” anmelden.

Geben Sie Ihre LDAP-Benutzernamen und das Passwort.

Debian Desktop-8 [Lauf] - Oracle VM VirtualBox_004

Bitte beachten Sie, dass der Benutzer mit dem Namen “linuxuser” ein lokaler Benutzer ist. Wir haben diese Anwender in unserer vorherigen Anleitung mit phpldapadmin Tool erstellt ..

Herzlichen Glückwunsch! Nun, sollten Sie in der Lage sein, sich mit einem LDAP Benutzer an Ihre Client-System.anzumelden.

openldap-client-config

Zum Schluss prüfen wir, wer genau denn dieser Benutzer ist.

Öffnen Sie hierzu das Terminal:

whoami

Beispielausgabe:

linuxuser

Führen Sie am Terminal den pwd Befehl aus um das gegenwärtigen Arbeitsverzeichnis des Benutzers zu erfahren::

pwd

Beispielausgabe:

/home/home/linuxuser

Sie sollten erkennen, dass es sich bei dem Home-Verzeichnis um das Verzeichnis handelt das Sie zuvor für den User ausgewählt haben. Dies wurde on-demand erstellt um den LDAP user zu speichern

Sie sollten nun in der Lage sein, auch mehrere Computer mit einem zentralen LDAP-Server zu authentifizieren. Ihren

LDAP-Benutzer wird es so erlaubt, beliebige PCs zu benutzen, die Sie auf diese Weise konfiguriert haben, insofern sie über gültige Anmeldeinformationen verfügen.

Zunächst sieht dieses HowTo etwas schwierig aus, jedoch wenn man die Schritte sorgfältig ausführt sollten Sie nun in der Lage sein, sowohl LDAP Server als auch Clienten komplett zu konfigurieren.

[coinbase_button name=“Socks” price_string=“10.00” price_currency_iso=“CAD”]