Zoeken op website

Installeer OpenLDAP Server en beheer met phpLDAPadmin in Debian/Ubuntu


LDAP staat voor Lightweight Directory Access Protocol dat op talloze manieren kan worden gebruikt, zoals voor authenticatie, gedeelde directory (voor e-mailclients), adresboek, enz. De Het LDAP-protocol kan worden gebruikt om allerlei soorten informatie vast te stellen en op te slaan. De OpenLDAP server geeft u de mogelijkheid om toegang te krijgen tot de informatie die is opgeslagen in een boomstructuur.

In dit artikel laten we u zien hoe u een OpenLDAP-server installeert en configureert en hoe u deze beheert met phpLDAPadmin op Debian, Ubuntu en Linux Mint systemen.

Installatie van OpenLDAP-server in Linux

Standaard bevindt de OpenLDAP-server zich in repositories onder het pakket “slapd“. U kunt het eenvoudig installeren met behulp van de pakketbeheertool genaamd apt-get. Maar voordat u de OpenLDAP-server installeert, moet u ervoor zorgen dat uw systeem up-to-date is.

Tijdens de installatie wordt u gevraagd een wachtwoord in te voeren voor de admin-vermelding in uw LDAP-directory. Voer een sterk wachtwoord in en bevestig dit door OK te selecteren.

 
sudo apt-get update 
sudo apt-get install slapd ldap-utils

Configureer OpenLDAP-server

Om de OpenLDAP-server te configureren, moet u het bestand ldap.conf bewerken, dat is opgeslagen in de map /etc. Om het ldap.conf bestand te bewerken heb je een teksteditor nodig zoals vim, nano etc. Voer de volgende opdracht uit om de ldap te openen configuratiebestand voor bewerking.

sudo nano /etc/ldap/ldap.conf

De uitvoer van de bovenstaande opdracht wordt weergegeven in de onderstaande sectie.

#
LDAP Defaults
#

See ldap.conf(5) for details
This file should be world readable but not world writable.

#BASE   dc=example,dc=com
#URI    ldap://ldap.example.com ldap://ldap-master.example.com:666

#SIZELIMIT      12
#TIMELIMIT      15
#DEREF          never

TLS certificates (needed for GnuTLS)
TLS_CACERT      /etc/ssl/certs/ca-certificates.crt

Verwijder de commentaartekens voor de regels BASE en URI, zodat u ze kunt bewerken met uw eigen domeinnaam en IP-adres. Omdat dit een testinstallatie en -configuratie is, gebruik ik tecmint123.com als mijn domeinnaam.

#
LDAP Defaults
#

See ldap.conf(5) for details
This file should be world readable but not world writable.

BASE   dc=tecmint123,dc=com
URI    ldap://ldap.example.com ldap://ldap-master.example.com:666

#SIZELIMIT      12
#TIMELIMIT      15
#DEREF          never

TLS certificates (needed for GnuTLS)
TLS_CACERT      /etc/ssl/certs/ca-certificates.crt

Sla het bestand op en voer de volgende opdracht uit om het LDAP-pakket opnieuw te configureren.

sudo dpkg-reconfigure slapd

Om de basis-DN van de LDAP-directory samen te stellen, heeft u een DNS-domeinnaam nodig.

Voer uw DNS domeinnaam in en druk op Enter om deze te bevestigen. Vervolgens zal de ldap vragen om de naam in te voeren van de organisatie die moet worden gebruikt in de basis-DN van uw LDAP-directory. Voer de naam van uw bedrijf of organisatie in en druk nogmaals op Enter.

Nadat de organisatie- of bedrijfsnaam is toegevoegd, zal de pakketconfiguratie vragen om het wachtwoord in te voeren voor de admin-invoer in uw LDAP
map. U moet het wachtwoord invoeren voor de beheerder die u in de vorige stappen heeft aangemaakt.

Nadat u het beheerderswachtwoord heeft bevestigd, moet u de database selecteren. Er zijn twee databases waaruit u kunt kiezen: de BDB en HDB database. Ze ondersteunen allebei dezelfde configuratieopties en gebruiken vergelijkbare opslagformaten, maar aangezien de HDB database ondersteuning toevoegt voor het hernoemen van subboomstructuren, is dit de aanbevolen indeling.

U kunt de database selecteren waarvan u denkt dat deze het beste bij u past. Nadat u heeft besloten welke database u gaat gebruiken, drukt u op Enter om de selectie te bevestigen. Vervolgens wordt u opnieuw met een vraag geconfronteerd. Selecteer Ja om de database te verwijderen wanneer slapd wordt gewist.

Selecteer opnieuw Ja en druk op Enter.

Selecteer Nee en de LDAP-server wordt gestart.

[sudo] password for ravisaive: 
 * Stopping OpenLDAP slapd                                                                                       [ OK ] 
  Moving old database directory to /var/backups:
  - directory unknown... done.
  Creating initial configuration... done.
  Creating LDAP directory... done.
 * Starting OpenLDAP slapd                                                                                       [ OK ] 
Processing triggers for libc-bin ...

Om de LDAP-server te testen, wordt de opdrachtldapsearch -x gebruikt.

ldapsearch -x

Het produceert de volgende uitvoer.

extended LDIF
#
LDAPv3
base <dc=tecmint123,dc=com> (default) with scope subtree
filter: (objectclass=*)
requesting: ALL
#

tecmint123.com
dn: dc=tecmint123,dc=com
objectClass: top
objectClass: dcObject
objectClass: organization
o: tecmint
dc: tecmint123

admin, tecmint123.com
dn: cn=admin,dc=tecmint123,dc=com
objectClass: simpleSecurityObject
objectClass: organizationalRole
cn: admin
description: LDAP administrator

search result
search: 2
result: 0 Success

numResponses: 3
numEntries: 2

LDAP-beheer met phpLDAPadmin

phpLDAPadmin is een GUI beheertool voor LDAP serverbeheer. Deze GUI tool helpt ons om via een webinterface met uw LDAP-server te communiceren. Het is beschikbaar in de standaardrepository's en kan worden geïnstalleerd met de opdracht apt-get.

Maar voordat u phpLDAPadmin installeert, moet u de Apache webserver en PHP geïnstalleerd en actief hebben. Als dit niet het geval is, installeert u het met behulp van de volgende opdracht.

sudo apt-get install apache2 php5 php5-mysql

Installeer vervolgens het pakket “phpldapadmin”, zoals hieronder weergegeven.

sudo apt-get install phpldapadmin

Op dezelfde manier waarop we het bestand ldap.conf hebben geconfigureerd, moeten we de configuratiebestanden van de phpldapadmin webinterface configureren voordat we deze gebruiken. Voer de volgende opdracht uit om het bestand phpldapadmin config.php te openen.

sudo nano /etc/phpldapadmin/config.php

Het enige wat u hoeft te doen is de domeinnamen te vervangen door uw eigen waarden. Het configuratiegedeelte dat voor dit geval nodig is, vindt u in het gedeelte 'Definieer uw LDAP-servers'.

$servers = new Datastore();
$servers->newServer('ldap_pla'); 
$servers->setValue('server','name','Tecmint LDAP Server');
$servers->setValue('server','host','127.0.0.1'); 
$servers->setValue('server','base',array('dc=tecmint123,dc=com'));
$servers->setValue('login','bind_id','cn=admin,dc=tecmint123,dc=com');

Nadat u klaar bent met het bewerken van het config.php configuratiebestand, opent u een tabblad in uw webbrowser en typt u de “http://ip_address_here/phpldapadminURL. Voer uw ldap-inloggegevens in en klik op inloggen.

Referentiekoppelingen

  1. OpenLDAP-startpagina
  2. phpLDAPadmin-startpagina