
Über OpenLDAP
OpenLDAP ist ein kostenloses Open Source Light Weight Directory Access Protocol, das vom OpenLDAP-Projekt entwickelt wurde. Es ist ein plattformunabhängiges Protokoll, so dass es auf allen Linux / Unix-ähnlichen Systemen, Windows, AIX, Solaris und Android läuft.
OpenLDAP enthält:
- slapd – eigenständiger LDAP-Daemon (Server)
- Bibliotheken, die das LDAP-Protokoll implementieren, sowie Dienstprogramme, Tools und Beispielclients.
In diesem Tutorial erfahren Sie, wie Sie OpenLDAP installieren und auf dem Ubuntu / Debian-Server konfigurieren. Ich habe dieses Tutorial in Ubuntu 15.10 getestet, aber diese Schritte sollten auf Debian 7/8 und früheren Versionen von Ubuntu, einschließlich Ubuntu, funktionieren 15.04/14.10/14.04 etc.
Hier sind die Details meines Testsystems:
- Betriebssystem : Ubuntu 15.10 64 Bit Server
- Hostname : Server.unixmen.lokale
- IP-Adresse : 192.168.1.103/24
Lassen Sie uns zuerst sehen, wie OpenLDAP installiert wird.
Installieren Sie OpenLDAP in Ubuntu 15.10 / Debian 8
Geben Sie den folgenden Befehl im Terminal ein, um openldap zu installieren.
Zum Root-Benutzer wechseln:
sudo su
Oder
su
Führen Sie den folgenden Befehl aus, um OpenLDAP zu installieren.
apt-get install slapd ldap-utils
Während der Installation werden Sie aufgefordert, das Kennwort für das LDAP-Administratorkonto festzulegen. Geben Sie hier Ihr Admin-Passwort ein.
Geben Sie das Passwort erneut ein.
OpenLDAP ist jetzt installiert. Gehen wir zur Konfigurationsaufgabe.
OpenLDAP konfigurieren
Bearbeiten Sie „/etc/ldap/ldap.conf“ Datei,
vi /etc/ldap/ldap.conf
Suchen, kommentieren und ersetzen Sie die Werte ‚BASE‘ und ‚URI‘ wie unten gezeigt durch Ihren Domainnamen und Ihre IP-Adresse.
## LDAP Defaults## See ldap.conf(5) for details# This file should be world readable but not world writable.BASE dc=unixmen,dc=localURI ldap://server.unixmen.local ldap://server.unixmen.local:666#SIZELIMIT 12#TIMELIMIT 15#DEREF never# TLS certificates (needed for GnuTLS)TLS_CACERT /etc/ssl/certs/ca-certificates.crt
Speichern und schließen Sie die Datei.
Als nächstes sollten wir die slapd mit den aktualisierten Werten neu konfigurieren.
dpkg-reconfigure slapd
Der folgende Bildschirm sollte erscheinen. Wählen Sie „Nein“ und drücken Sie die Eingabetaste.
Geben Sie den DNS-Domänennamen ein.
Geben Sie den Namen der Organisation ein (d. h. Ihren Firmennamen).
Geben Sie das LDAP-Administratorkennwort ein, das Sie im vorherigen Schritt erstellt haben.
Geben Sie das Passwort erneut ein.
Wählen Sie die Backend-Datenbank aus. Ich gehe mit Standardeinstellungen.
Wählen Sie aus, ob Sie die Datenbank automatisch löschen oder behalten möchten, wenn slapd entfernt wird. Hier möchte ich meine alte Datenbank behalten, also habe ich auf Nein geklickt.
Wählen Sie Ja, um die alte Datenbank zu verschieben.
Wählen Sie Nein und drücken Sie die Eingabetaste.
Das war’s. Wir haben OpenLDAP erfolgreich konfiguriert. Lassen Sie uns weitermachen und prüfen, ob es funktioniert oder nicht.
LDAP-Server testen
Führen Sie den folgenden Befehl aus, um OpenLDAP zu testen:
ldapsearch -x
Beispielausgabe:
# extended LDIF## LDAPv3# base <dc=unixmen,dc=local> (default) with scope subtree# filter: (objectclass=*)# requesting: ALL## unixmen.localdn: dc=unixmen,dc=localobjectClass: topobjectClass: dcObjectobjectClass: organizationo: unixmendc: unixmen# admin, unixmen.localdn: cn=admin,dc=unixmen,dc=localobjectClass: simpleSecurityObjectobjectClass: organizationalRolecn: admindescription: LDAP administrator# search resultsearch: 2result: 0 Success# numResponses: 3# numEntries: 2
Wenn Sie die Meldung ‚Erfolg‘ in Ihrer Ausgabe sehen, dann Herzlichen Glückwunsch! LDAP-Server funktioniert!!
LDAP-Serververwaltung
Die Verwaltung des LDAP-Servers über den Befehlszeilenmodus ist etwas schwierig. Wir können uns nicht alle LDAP-Befehle merken. Daher werden wir ein einfacheres GUI-Verwaltungstool namens „phpldapadmin“ verwenden, um den LDAP-Server zu verwalten, zu konfigurieren und zu verwalten.
Installieren Sie phpLDAPadmin
phpLDAPadmin ist ein webbasiertes LDAP-Verwaltungstool zur Verwaltung Ihres LDAP-Servers. Mit phpLDAPadmin können Sie Ihren LDAP-Baum durchsuchen, das LDAP-Schema anzeigen, Suchen durchführen, LDAP-Einträge erstellen, löschen, kopieren und bearbeiten. Sie können sogar Einträge zwischen Servern kopieren.
Geben Sie den folgenden Befehl ein, um phpLDAPadmin zu installieren:
apt-get install phpldapadmin
Erstellen Sie einen symbolischen Link für das Verzeichnis phpldapadmin.
ln -s /usr/share/phpldapadmin/ /var/www/html/phpldapadmin
Führen Sie unter Ubuntu 14.10 und niedrigeren Versionen:
ln -s /usr/share/phpldapadmin/ /var/www/phpldapadmin
Bearbeiten Sie „/etc/ phpldapadmin/config.php“ datei,
vi /etc/phpldapadmin/config.php
Stellen Sie die richtige Zeitzone ein. Suchen und kommentieren Sie dazu die folgende Zeile aus und legen Sie Ihre Zeitzone fest.
$config->custom->appearance = 'Asia/Kolkata';
Scrollen Sie weiter nach unten und ersetzen Sie die Domainnamen durch Ihre eigenen Werte.
Suchen Sie dazu den Abschnitt „LDAP-Server definieren“ in der Konfigurationsdatei und bearbeiten Sie die folgenden Zeilen wie unten gezeigt.
// Set your LDAP server name //$servers->setValue('server','name','Unixmen LDAP Server');// Set your LDAP server IP address // $servers->setValue('server','host','192.168.1.103');// Set Server domain name //$servers->setValue('server','base',array('dc=unixmen,dc=local'));// Set Server domain name again//$servers->setValue('login','bind_id','cn=admin,dc=unixmen,dc=local');
Starten Sie den Apache-Dienst neu.
systemctl restart apache2
Führen Sie unter Ubuntu 14.10 und älteren Versionen:
service apache2 restart
Stellen Sie sicher, dass Sie den Apache-Server-Port „80“ und den LDAP-Standard-Port „389“ in Ihrer Firewall- / Router-Konfiguration geöffnet haben.
ufw allow 80
Beispielausgabe:
Rules updatedRules updated (v6)
ufw allow 389
Beispielausgabe:
Rules updatedRules updated (v6)
Die obigen Schritte sind für Debian-Systeme nicht erforderlich.
Test phpLDAPadmin
Öffnen Sie Ihren Webbrowser und navigieren Sie zu: „http://IP-Address/phpldapadmin“.
Der folgende Bildschirm sollte erscheinen.
Klicken Sie im linken Bereich auf „Anmelden“. Geben Sie das LDAP-Administratorkennwort ein, das Sie während der OpenLDAP-Installation erstellt haben, und klicken Sie auf „Authentifizieren“.
Jetzt wird der Hauptkonsolenbildschirm von phpldapadmin geöffnet.
Sie können die LDAP-Domäne „unixmen.lokale“ und andere Details auf der linken Seite.
Von hier aus können Sie zusätzliche Objekte wie Organisationseinheit, Benutzer und Gruppen usw. hinzufügen.
Objekte erstellen
1. Organisationseinheit erstellen:
Hier können Sie einige Beispielobjekte über die phpldapadmin-Konsole erstellen. Zuerst erstellen wir eine OU.
Klicken Sie auf das „+“ – Zeichen in der Nähe der Zeile „dc=unixmen“ und klicken Sie auf den Link „Neuen Eintrag hier erstellen“.
Scrollen Sie nach unten und wählen Sie „Generic-Organizational Unit“.
Geben Sie den Namen der Organisationseinheit (Ex.sales) und klicken Sie auf „Objekt erstellen“.
Klicken Sie abschließend auf „Commit“.
Jetzt sehen Sie die neu erstellte Organisationseinheit im Haupt-LDAP-Abschnitt im linken Bereich.
2. Gruppe erstellen:
Klicken Sie im linken Bereich auf die Organisationseinheit Vertrieb und klicken Sie auf den Link „Untergeordneten Eintrag erstellen“.
Wählen Sie im nächsten Fenster „Generic: Posix Group“.
Geben Sie den Namen der Gruppe ein und klicken Sie auf die Schaltfläche Objekt erstellen. Zum Beispiel gebe ich hier den Gruppennamen als „sales-group“ ein.
Klicken Sie auf Commit, um die Änderungen zu speichern.
Jetzt können Sie sehen, dass die neu erstellte Gruppe „sales-group“ unter dem Vertrieb OU genannt.
3. Benutzer anlegen:
Lassen Sie uns nun unter sales-group einen neuen Benutzer anlegen.
Klicken Sie links auf die Sales-Gruppe. Wählen Sie die Schaltfläche Link für untergeordneten Eintrag erstellen.
Wählen Sie im nächsten Fenster „Allgemein: Benutzerkonto“.
Geben Sie die Benutzerdetails wie Common Name, GID-Nummer, Nachname, Login-Shell, Benutzerkennwort und Benutzer-ID usw. ein., wie im folgenden Screenshot gezeigt, und klicken Sie auf Objekt erstellen. Beispielsweise. hier werde ich einen Benutzer namens „kumar“ erstellen.
Klicken Sie dann auf „Commit“, um die Änderungen zu speichern.
Nun wird der neu angelegte Benutzer „kumar“ unter dem Objekt „sales-group“ gefunden.
Außerdem können Sie mit dem Befehl überprüfen, ob die neu erstellten Objekte tatsächlich vorhanden sind:
ldapsearch -x
Beispielausgabe:
# extended LDIF## LDAPv3# base <dc=unixmen,dc=local> (default) with scope subtree# filter: (objectclass=*)# requesting: ALL## unixmen.localdn: dc=unixmen,dc=localobjectClass: topobjectClass: dcObjectobjectClass: organizationo: unixmendc: unixmen# admin, unixmen.localdn: cn=admin,dc=unixmen,dc=localobjectClass: simpleSecurityObjectobjectClass: organizationalRolecn: admindescription: LDAP administrator# sales, unixmen.localdn: ou=sales,dc=unixmen,dc=localobjectClass: organizationalUnitobjectClass: topou: sales# sales-group, sales, unixmen.localdn: cn=sales-group,ou=sales,dc=unixmen,dc=localgidNumber: 500cn: sales-groupobjectClass: posixGroupobjectClass: top# kumar, sales-group, sales, unixmen.localdn: cn=kumar,cn=sales-group,ou=sales,dc=unixmen,dc=localcn:: IGt1bWFygidNumber: 500homeDirectory: /home/users/kumarsn: kumarloginShell: /bin/shobjectClass: inetOrgPersonobjectClass: posixAccountobjectClass: topuidNumber: 1000uid: kumar# search resultsearch: 2result: 0 Success# numResponses: 6# numEntries: 5
Wie Sie in der obigen Ausgabe sehen, wurden die neuen Objekte ’sales‘, ’sales-group‘ und ‚kumar‘ erfolgreich unter der Haupt-LDAP-Domäne erstellt. Ebenso können Sie so viele Objekte erstellen, wie Sie möchten.
Die Installation und Konfiguration von OpenLDAP in Debian und Ubuntu und Derivaten ist wirklich einfach und unkompliziert. Selbst unerfahrene Benutzer können innerhalb einer Stunde problemlos einen funktionierenden LDAP-Server einrichten.
Jetzt ist OpenLDAP Server einsatzbereit.
Ich habe den LDAP-Server erfolgreich installiert und konfiguriert, was nun? In unserem nächsten Artikel erfahren Sie, wie Sie Linux-Clients für die Authentifizierung mit OpenLDAP konfigurieren.
Viel Glück! Glückliches Wochenende!!