GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So installieren und konfigurieren Sie OpenLDAP und phpLDAPadmin unter Ubuntu 20.04

LDAP ist ein Lightweight Directory Access Protocol, das für den Zugriff auf und die Verwaltung verteilter Verzeichnisse über ein Internetprotokoll verwendet wird. phpLDAPadmin ist ein webbasierter LDAP-Client, der zum Verwalten und Verwalten des LDAP-Servers verwendet wird. Seine leistungsstarke Suchfunktion und die hierarchische Baumansicht erleichtern die Verwaltung des LDAP-Servers über den Webbrowser. Mit phpLDAPadmin können Sie Datensätze hinzufügen und löschen, Bildattribute anzeigen und bearbeiten, Benutzerkennwort-Hashes verwalten und vieles mehr.

In diesem Tutorial erklären wir, wie man phpLDAPadmin auf Ubuntu 20.04 installiert.

Voraussetzungen

  • Ein Server mit Ubuntu 20.04.
  • Ein gültiger Domainname, auf den Ihre Server-IP verweist.
  • Ein Root-Passwort wird auf dem Server konfiguriert.

Erste Schritte

Bevor Sie beginnen, wird immer empfohlen, Ihr System mit der neuesten Paketversion zu aktualisieren. Sie können es mit dem folgenden Befehl aktualisieren:

apt-get update -y

Sobald alle Pakete aktualisiert sind, können Sie mit dem nächsten Schritt fortfahren.

Installieren und konfigurieren Sie den OpenLDAP-Server

Zuerst müssen Sie Slapd und andere LDAP-Dienstprogramme auf Ihrem Server installieren. Sie können sie installieren, indem Sie den folgenden Befehl ausführen:

apt-get install slapd ldap-utils

Während der Installation werden Sie aufgefordert, ein Administratorkennwort wie unten gezeigt einzurichten:

Geben Sie Ihr sicheres Passwort ein und drücken Sie Enter weitermachen. Sobald die Installation abgeschlossen ist, müssen Sie das SLAPD-Paket neu konfigurieren, um Ihre Domäneninformationen festzulegen.

Sie können es mit dem folgenden Befehl neu konfigurieren:

dpkg-reconfigure slapd

Sie werden aufgefordert, die OpenLDAP-Serverkonfiguration wie unten gezeigt auszulassen:

Wählen Sie Nein aus und drücken Sie Enter weitermachen. Sie werden aufgefordert, einen DNS-Domänennamen wie unten gezeigt anzugeben:

Geben Sie Ihren Domainnamen ein und drücken Sie Enter weitermachen. Sie werden aufgefordert, den Namen der Organisation wie unten gezeigt anzugeben:

Geben Sie den gewünschten Organisationsnamen ein und drücken Sie Enter weitermachen. Sie werden wie unten gezeigt nach dem Admin-Passwort gefragt:

Geben Sie Ihr Administratorkennwort ein und drücken Sie Enter weitermachen. Sie werden aufgefordert, die Datenbank wie unten gezeigt zu entfernen:

Wählen Sie Ja aus und drücken Sie Enter um die Konfiguration abzuschließen.

Jetzt können Sie Ihre LDAP-Informationen mit dem folgenden Befehl überprüfen:

Slapcat

Sie sollten die folgende Ausgabe erhalten:

dn:dc=example,dc=comobjectClass:topobjectClass:dcObjectobjectClass:Organizationo:example.comdc:examplestructuralObjectClass:OrganizationentryUUID:971829cc-ac5f-103a-8e42-9f8486ff5685creatorsName:cn=admin,dc=example,dc=comcreateTimestamp:20201028CSNZ05 :20201027051828.103064Z # 000000 # 000 # 000000modifiersName:cn =admin, dc =example, dc =commodifyTimestamp:20201027051828Zdn:cn =admin, dc =example, dc =comobjectClass:simpleSecurityObjectobjectClass:organizationalRolecn:admindescription:LDAP administratoruserPassword ::e1NTSEF9Tm5OYlpSMktkYjVnUUprb284MHFPTEVkMjQrQXpQWEk =structural:organizationalRoleentryUUID:9718c198-ac5f-103a-8e43-9f8486ff5685creatorsName:cn =admin, dc =example, dc =comcreateTimestamp:20201027051828ZentryCSN:20201027051828.107057Z # 000000 # 000 # 000000modifiersName:cn =admin, dc =example, dc =commodifyTimestamp:20201027051828Z  

OpenLDAP-Benutzerkonten erstellen

Zuerst müssen Sie die Container der Organisationseinheit erstellen, um Benutzer- und Gruppeninformationen zu speichern. Sie können es mit dem folgenden Befehl erstellen:

nano users-ou.ldif

Fügen Sie die folgenden Zeilen hinzu:

dn:ou=people,dc=example,dc=comobjectClass:OrganizationalUnitobjectClass:topou:peopledn:ou=groups,dc=example,dc=comobjectClass:OrganizationalUnitobjectClass:topou:groups

Speichern und schließen Sie die Datei, wenn Sie fertig sind, und passen Sie dann die SLAPD-Datenbankzugriffskontrollen an, indem Sie die folgende Datei erstellen:

nano update-mdb-acl.ldif

Fügen Sie die folgenden Zeilen hinzu:

dn:olcDatabase={1}mdb,cn=configchangetype:modifyreplace:olcAccessolcAccess:to attrs=userPassword,shadowLastChange,shadowExpire by self write by anonymous auth by dn.subtree="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" manage by dn.exact="cn=readonly,ou=people,dc=example,dc=com" read by * noneolcAccess:to dn.exact="cn=readonly,ou=people,dc=example,dc=com" by dn.subtree="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" manage by * noneolcAccess:to dn.subtree="dc=example ,dc=com" von dn.subtree="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" verwaltet von Benutzern gelesen von * none

Speichern und schließen Sie die Datei und aktualisieren Sie dann die Datenbank-ACL mit den obigen Informationen, indem Sie den folgenden Befehl ausführen:

ldapadd -Y EXTERNAL -H ldapi:/// -f update-mdb-acl.ldif

Sie sollten die folgende Ausgabe erhalten:

SASL/EXTERNAL-Authentifizierung gestartetSASL-Benutzername:gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=authSASL SSF:0Modifying entry "olcDatabase={1}mdb,cn=config"

Aktualisieren Sie als Nächstes die Datenbank mit den Benutzer-OU-Informationen, indem Sie den folgenden Befehl ausführen:

ldapadd -Y EXTERNAL -H ldapi:/// -f users-ou.ldif

Sie sollten die folgende Ausgabe erhalten:

SASL/EXTERNAL-Authentifizierung gestartetSASL-Benutzername:gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=authSASL SSF:0adding new entry „ou=people,dc=example,dc=com“adding new entry "ou=Gruppen,dc=Beispiel,dc=com"

Erstellen Sie als Nächstes ein neues Benutzerkonto namens hiteshj, indem Sie die folgende Datei erstellen:

nano hitesh.ldif

Fügen Sie die folgenden Zeilen hinzu:

dn:uid=hiteshj,ou=people,dc=example,dc=comobjectClass:inetOrgPersonobjectClass:posixAccountobjectClass:shadowAccountuid:hiteshjcn:Hiteshsn:JethvaloginShell:/bin/bashuidNumber:10000gidNumber:10000homeDirectory:/home/hiteshjshadowMax:60shadow.Min:1shadowWarning :7shadowInactive:7shadowLastChange:0dn:cn=hiteshj,ou=groups,dc=example,dc=comobjectClass:posixGroupcn:hiteshjgidNumber:10000memberUid:hiteshj

Speichern und schließen Sie die Datei und fügen Sie dann den Benutzer mit dem folgenden Befehl zur Datenbank hinzu:

ldapadd -Y EXTERNAL -H ldapi:/// -f hitesh.ldif

Sie sollten die folgende Ausgabe erhalten:

SASL/EXTERNAL-Authentifizierung gestartetSASL-Benutzername:gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=authSASL SSF:0Hinzufügen des neuen Eintrags „uid=hiteshj,ou=people,dc=example,dc=com "Hinzufügen eines neuen Eintrags "cn=hiteshj,ou=groups,dc=example,dc=com"

Als nächstes müssen Sie das Passwort für den Benutzer festlegen. Sie können es mit dem folgenden Befehl einstellen:

ldappasswd -H ldapi:/// -Y EXTERNAL -S "uid=hiteshj,ou=people,dc=example,dc=com"

Sie sollten die folgende Ausgabe sehen:

Neues Passwort:Neues Passwort erneut eingeben:SASL/EXTERNAL-Authentifizierung gestartetSASL-Benutzername:gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=authSASL SSF:0

Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

OpenLDAP-Bind-DN ​​erstellen

Als nächstes müssen Sie den Benutzernamen und das Passwort für die Abfrage des Verzeichnisservers definieren. Generieren Sie zunächst den Passwort-Hash für den Bind-DN-Benutzer mit dem folgenden Befehl:

slapppasswd

Sie sollten die folgende Ausgabe erhalten:

Neues Passwort:Neues Passwort erneut eingeben:{SSHA}DhjyJN5akaj2etaFKoyeAY8QMgSD/OTb

Erstellen Sie als Nächstes mit dem folgenden Befehl einen schreibgeschützten Bind-DN-Namen:

nano readonly-user.ldif

Fügen Sie die folgenden Zeilen hinzu:

dn:cn=readonly,ou=people,dc=example,dc=comobjectClass:OrganizationalRoleobjectClass:simpleSecurityObjectcn:readonlyuserPassword:{SSHA}DhjyJN5akaj2etaFKoyeAY8QMgSD/OTbdescription:DN-Benutzer für LDAP-Operationen binden

Speichern und schließen Sie die Datei, wenn Sie fertig sind, und fügen Sie dann den BIND-Benutzer mit dem folgenden Befehl zur Datenbank hinzu:

ldapadd -Y EXTERNAL -H ldapi:/// -f readonly-user.ldif

Sie sollten die folgende Ausgabe erhalten:

SASL/EXTERNAL-Authentifizierung gestartetSASL-Benutzername:gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=authSASL SSF:0neuen Eintrag hinzufügen „cn=readonly,ou=people,dc=example,dc=com "

Überprüfen Sie als Nächstes die Bind-DN-ACL mit dem folgenden Befehl:

ldapsearch -Q -LLL -Y EXTERNAL -H ldapi:/// -b cn=config '(olcDatabase={1}mdb)' olcAccess

Sie sollten die folgende Ausgabe erhalten:

dn:olcDatabase={1}mdb,cn=configolcAccess:{0}to attrs=userPassword,shadowLastChange,shadowExpire by self writ e by anonymous auth by dn.subtree="gidNumber=0+uidNumber=0,cn=peercred,cn=ext ernal,cn=auth" manage by dn.exact="cn=readonly,ou=people,dc=example,dc=com" read by * noneolcAccess:{1}to dn.exact="cn=readonly,ou=people,dc=example,dc=com" von dn.subt ree="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" verwaltet von * non eolcAccess:{2} to dn.subtree="dc=example,dc=com" by dn.subtree="gidNumber=0+uid Number=0,cn=peercred,cn=external,cn=auth" manage by users read by * none 

Installieren und konfigurieren Sie phpLDAPadmin

Standardmäßig ist das Paket phpLDAPadmin im Standard-Repository von Ubuntu 20.04 verfügbar. Sie können es installieren, indem Sie den folgenden Befehl ausführen:

apt-get install phpldapadmin -y

Nach der Installation von phpLDAPadmin müssen Sie phpLDAPadmin konfigurieren und Ihre Domäneninformationen definieren. Sie können dies tun, indem Sie die Datei /etc/phpldapadmin/config.php:

bearbeiten
nano /etc/phpldapadmin/config.php

Ändern Sie die folgenden Zeilen:

$servers->setValue('server','name','My LDAP Server');$servers->setValue('server','host','69.87.216.102');$servers->; setValue('server','base',array('dc=example,dc=com'));$servers->setValue('login','auth_type','session');$servers->setValue(' login','bind_id','cn=admin,dc=example,dc=com');$servers->setValue('auto_number','min',array('uidNumber'=>10000,'gidNumber'=> 10000));

Speichern und schließen Sie die Datei, wenn Sie fertig sind.

Apache für phpLDAPadmin konfigurieren

Die phpLDAPadmin-Standardkonfigurationsdatei für Apache befindet sich unter /etc/apache2/conf-available/phpldapadmin.conf. Nehmen Sie keine Änderungen vor und verwenden Sie die Standardeinstellungen.

Deaktivieren Sie als Nächstes die Standardkonfigurationsdatei des virtuellen Apache-Hosts und starten Sie den Apache-Dienst neu, um die Änderungen zu übernehmen:

a2dissite 000-default.conf
systemctl reset apache2

Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Greifen Sie auf die Web-Benutzeroberfläche von phpLDAPadmin zu

Öffnen Sie nun Ihren Webbrowser und greifen Sie über die URL http://your-server-ip/phpldapadmin auf phpLDAPadmin zu . Sie sollten den folgenden Bildschirm sehen:

Klicken Sie nun auf Login Taste. Sie sollten den Anmeldebildschirm von phpLDAPadmin sehen:

Geben Sie Ihren Login-DN und Ihr Passwort ein und klicken Sie auf Authentifizieren Taste. Sie sollten das phpLDAPadmin-Dashboard auf dem folgenden Bildschirm sehen:

Schlussfolgerung

Herzliche Glückwünsche! Sie haben phpLDAPadmin erfolgreich auf dem Ubuntu 20.04-Server installiert und konfiguriert. Sie können jetzt Ihren LDAP-Server verwalten und verschiedene Aufgaben ausführen, darunter das Hinzufügen von Organisationseinheiten, Gruppen und Benutzern mit der phpLDAPadmin-Webbenutzeroberfläche. Fühlen Sie sich frei, mich zu fragen, wenn Sie irgendwelche Fragen haben.


Ubuntu
  1. So installieren und konfigurieren Sie Redis unter Ubuntu 18.04

  2. So installieren und konfigurieren Sie Redmine unter Ubuntu 18.04

  3. So installieren und konfigurieren Sie Samba unter Ubuntu 18.04

  4. So installieren und konfigurieren Sie Redis unter Ubuntu 20.04

  5. Installieren und konfigurieren Sie OpenLDAP und phpLDAPadmin unter Ubuntu 14.04

So installieren und konfigurieren Sie den Nexus Repository Manager unter Ubuntu 20.04

So installieren und konfigurieren Sie Cacti unter Ubuntu 20.04

So installieren und konfigurieren Sie den OpenLDAP-Server unter Ubuntu 16.04

So installieren und konfigurieren Sie den VNC-Server unter Ubuntu 20.04

So installieren und konfigurieren Sie Elasticsearch unter Ubuntu 20.04

So installieren und konfigurieren Sie Nextcloud unter Ubuntu 20.04