Hoe een OpenLDAP Ubuntu-server te installeren en configureren

In de snelle digitale wereld van vandaag is het bijhouden van gebruikersaccounts en toegangsbeheer geen eenvoudige taak. Maar vrees niet! OpenLDAP is een oplossing voor uw zorgen, een veelgebruikte open-source implementatie van het Lightweight Directory Access Protocol (LDAP).

Deze tutorial loodst je door de ins en outs van het opzetten van een OpenLDAP-server op je Ubuntu-machine. Zeg vaarwel tegen verspreide gebruikersgegevens en hallo tegen gecentraliseerd beheer, authenticatie en autorisatie.

Lees verder om je gebruikersbeheer te stroomlijnen en je IT-workflows te vereenvoudigen!

Vereisten

Deze tutorial bevat praktische demonstraties voor het opzetten van een OpenLDAP-server. Als je wilt meedoen, zorg er dan voor dat je het volgende hebt:

  • Twee machines (één voor de server en één voor de client) met Ubuntu 20.04 of later.
  • A non-root user with sudo privileges on both machines.

De OpenLDAP-server installeren op UbuntuNa ervoor te zorgen dat je systeem gereed is, duik je nu in de kern van je opstelling door de OpenLDAP-server te installeren. LDAP heeft aanzienlijk gewicht in serverbeheer, vooral bij het beheren van gebruikersaccounts en toegangsbeheer binnen het netwerk van een organisatie.

Vanaf het zorgen voor de paraatheid van uw systeem gaat u nu de kern van uw setup in, door de OpenLDAP-server te installeren. LDAP heeft veel gewicht in serverbeheer, vooral bij het beheren van gebruikersaccounts en toegangscontrole binnen een organisatie-netwerk.

Om de OpenLDAP-server op uw systeem te installeren, volg de onderstaande stappen:

? Gedurende deze gids moet u uw domeinnaam gebruiken om ata.com te vervangen.

1. Open uw terminal en voer de volgende opdracht uit om de hostnaam van uw machine in te stellen (bijvoorbeeld ldap.ata.com). Deze opdracht geeft geen uitvoer naar de terminal, maar stelt andere apparaten op het netwerk in staat om uw machine te herkennen.

sudo hostnamectl set-hostname ldap.ata.com

2. Voer vervolgens de apt update opdracht hieronder uit om de pakketindex van uw systeem bij te werken.

sudo apt update -y
Updating the system’s package list

3. Zodra uw systeem is bijgewerkt, voert u de onderstaande apt install opdracht uit om de Apache-webserver en essentiële componenten (PHP-modules) te installeren. Deze componenten zijn noodzakelijk voor de juiste werking van OpenLDAP.

sudo apt install apache2 php php-cgi libapache2-mod-php php-mbstring php-common php-pear -y
Installing Apache web server and essential PHP modules

4. Nu voer deze opdracht uit om de OpenLDAP-server en LDAP Account Manager (LAM) te installeren, een handige webgebaseerde beheertool.

sudo apt install slapd ldap-utils -y && sudo apt install ldap-account-manager -y
Installing the OpenLDAP server and LAM

5. Geef een beheerderswachtwoord voor uw LDAP-server op wanneer hierom wordt gevraagd tijdens de installatie.

Providing an admin password for the LDAP server

6. Zodra geïnstalleerd, voer de volgende systemctl opdracht uit om de status van de OpenLDAP-server (slapd) te bevestigen.

sudo systemctl status slapd
Confirming the OpenLDAP server is active and running

7. Tot slot, voer de onderstaande slapcat opdracht uit om de inhoud van de LDAP-database te controleren.

sudo slapcat

A list of default schemas and configurations below indicates that OpenLDAP has been installed correctly.

Checking the LDAP database contents

Het OpenLDAP-server veilig houden met UFW Firewall

Je hebt je OpenLDAP-server succesvol geïnstalleerd, maar je moet zijn verdediging versterken voordat hij je netwerk kan beschermen. Hoe? Door de hulp in te roepen van UFW, Ubuntu’s vertrouwde standaardfirewall.

Het configureren van de UFW Firewall is als het opzetten van een digitale gracht rond je kasteel. Je zult de firewall aanpassen om je server te beschermen, waarbij alleen essentiële verkeer door kan en digitale kapers op afstand houdt.

Om zeker te zijn van beveiligde verbindingen op je OpenLDAP-server, moet je bepaalde poorten openen voor de OpenLDAP-server als volgt:

Voer de volgende ufw commando’s uit om allow inkomende verkeer toe te staan op poorten voor HTTP (80), HTTPS (443) en LDAP (389).

# Sta HTTP-verkeer toe
sudo ufw allow 80
# Sta HTTPS-verkeer toe
sudo ufw allow 443
# Sta LDAP-verkeer toe
sudo ufw allow 389
Configuring the UFW Firewall for OpenLDAP Server

Voer nu het onderstaande commando uit om een gedetailleerd overzicht te krijgen van de huidige status en configuratie van UFW op uw systeem.

sudo ufw status verbose

Het onderstaande uitvoer bevestigt dat de firewallregels die u hebt toegevoegd, succesvol zijn toegepast.

Checking the UFW status

PHP-ondersteuning inschakelen in Apache voor LAM

Na het versterken van de beveiliging van uw LDAP-server met de UFW Firewall, moet u ervoor zorgen dat Apache PHP-bestanden effectief kan herkennen en verwerken. Deze cruciale stap zorgt voor een soepele integratie tussen Apache en LAM, waardoor het efficiënter wordt om uw LDAP-directory te beheren.

Om PHP-ondersteuning in Apache in te schakelen, voert u het volgende uit:

1. Voer het volgende a2enconf commando uit om een configuratiebestand in te schakelen voor Apache’s PHP Common Gateway Interface (CGI).

Deze configuratiebestanden bevatten meestal instructies met betrekking tot het configureren van PHP voor Apache, zoals het instellen van handlers of het definiëren van opties voor PHP-uitvoering. Door deze configuratiebestanden in te schakelen, zorg je ervoor dat Apache goed is geconfigureerd om PHP-scripts te verwerken met behulp van de CGI-interface.

sudo a2enconf php*-cgi
Enabling the PHP module

2. Zodra ingeschakeld, voer de onderstaande opdracht uit om de Apache-service (apache2) te herladen om de wijzigingen toe te passen.

Deze opdracht geeft niets terug, maar zorgt ervoor dat eventuele wijzigingen aan de Apache-configuratie van kracht worden. Dit proces omvat het inschakelen van de PHP CGI-module zonder de hele Apache-service opnieuw op te starten.

sudo systemctl reload apache2

3. Voer nu deze opdracht uit om de status van de apache2-service te controleren om ervoor te zorgen dat alles vlot verloopt.

sudo systemctl status apache2

Het resultaat toont de huidige status van de Apache-webserver als actief (draaiend) zonder fouten, zoals hieronder.

Checking the status of the Apache service

Instellen van de LAM-webinterface

Na het inschakelen van PHP-ondersteuning in Apache voor LAM, richt je je nu op een geïntegreerde hub waar je je OpenLDAP-server kunt bedienen – de LAM-webinterface. Deze webinterface biedt een intuïtief platform voor beheerders zoals jij om directory services te beheren.

Om de LAM-webinterface in te stellen, volg deze stappen:

1. Voer de ifconfig-opdracht hieronder uit om je netwerkinformatie weer te geven.

ifconfig

Kijk naar en noteer je server’s IP-adres (bijv. 192.168.1.7), meestal aangeduid met inet.

Noting down the server’s IP address

2. Open je favoriete webbrowser en navigeer naar het IP-adres van je server, gevolgd door /lam in de adresbalk (bijv. http://192.168.1.7/lam). Door dit te doen wordt je browser doorgestuurd naar de webinterface van LAM, zoals hieronder weergegeven.

Accessing the LAM web interface

3. Klik op LAM configuratie (rechtsboven) op de aanmeldingspagina om toegang te krijgen tot de LDAP Account Manager-pagina (stap vier).

Accessing the LAM Account Manager

4. Klik nu op Serverprofielen bewerken om je LAM-instellingen aan te passen.

Editing server profiles to modify the LAM settings

5. Voer het standaard lam wachtwoord in op de tweede aanmeldingspagina en klik op OK om je te authenticeren.

Authenticating access to the LAM web interface

6. Zodra je bent ingelogd, configureer de volgende server- en taalinstellingen onder Algemene instellingen:

  • Boom-achtervoegsel – Typ in je directory’s basis-onderscheidend naam (DN), zoals dc=ata,dc=com, vervang ze door je eigen domeingegevens.
  • Standaardtaal – Selecteer je taalvoorkeur voor de LAM-webinterface.
  • Tijdzone – Kies de tijdzone die overeenkomt met de locatie van je server, wat cruciaal is voor nauwkeurig beheer van accountverloop.
Configuring the server and language settings

7. Scrol omlaag en stel de opties in voor beveiliging en profielwachtwoord met de volgende:

  • Lijst van geldige gebruikers – Voer de DN van je LDAP-beheerder in, bijvoorbeeld cn=admin,dc=ata,dc=com.
  • Nieuw wachtwoord en Wachtwoord opnieuw invoeren – Creëer en bevestig een sterke wachtwoord voor het LAM-beheerdersaccount om het oorspronkelijke standaardwachtwoord te vervangen.
  • Blijf andere instellingen standaard gebruiken en klik op Opslaan om uw configuraties toe te passen. Zodra deze zijn opgeslagen, wordt uw browser doorgestuurd naar de aanmeldingspagina.
Configuring security settings and profile password

Groepen en gebruikers maken in LAM

Met uw LAM-dashboard klaar, richt u zich op het leggen van de basis voor een georganiseerde en veilige directorystructuur – groepen en gebruikers. Het maken van groepen en gebruikers is als het organiseren van uw team in afdelingen en iedereen hun ID-badge geven.

Om groepen en gebruikers in LAM te maken, voert u het volgende uit:

1. Navigeer naar de LDAP Account Manager volgens stappen drie tot en met vijf van de sectie “Het instellen van de LAM-webinterface”. Maar dit keer voert u uw nieuw geconfigureerde wachtwoord in voor de OpenLDAP-server.

2. In de LAM Account Manager navigeert u naar het tabblad Account types om alle toegangstypeopties te bekijken.

Accessing the account types

3. Ga vervolgens naar beneden en stel de LDAP suffixes in terwijl u <base_DN> (dat wil zeggen dc=ata,dc=com) aanpast, zoals hieronder:

  • Gebruikersou=Departments,<base_DN>
  • Groepenou=Groups,<base_DN>
  • Laat andere instellingen standaard en klik op Opslaan.

Na het opslaan wordt uw browser doorgestuurd naar de admin-aanmeldingspagina (stap vier).

Setting the LDAP suffixes

4. Voer nu het beheerderswachtwoord in dat u tijdens de installatie hebt ingesteld en klik op Login om toegang te krijgen tot uw OpenLDAP-server.

Logging in to the OpenLDAP server

5. Als u hierom wordt gevraagd, klik op AANMAKEN om de twee ontbrekende suffixen te creëren.

Creating the two missing suffixes

6. Na de creatie, klik op Boomweergave (rechtsboven) om de nieuwe LDAP-suffixen (Afdelingen en Groepen) weer te geven in een hiërarchische structuur, zoals hieronder weergegeven.

Viewing the hierarchical structure

7. Ga verder, klik op Hulpmiddelen (rechtsboven) en kies OU-editor om een nieuwe afdeling te configureren met het volgende:

  • Parent DN – Kies Afdeling > ata > com voor de Parent DN. Deze optie specificeert waar de nieuwe afdeling wordt aangemaakt binnen uw LDAP-directory.
  • Naam – Voer IT (willekeurig) in als de naam van de afdeling (OU).

Zodra geconfigureerd, klik op OK om een nieuwe afdeling met de naam IT toe te voegen.

Adding a new department within the LDAP directory

8. Navigeer nu naar het Groepen tabblad en klik op Nieuwe groep om een nieuwe groep te creëren.

Het creëren van groepen vereenvoudigt beheer, bevordert samenwerking, handhaaft beleid en faciliteert schaalbaarheid van de organisatie.

Creating a new group

9. Geef een beschrijvende groepsnaam op (bijv. Mijn IP-groep) en klik op Opslaan om de nieuwe groep te bevestigen.

Naming the new group

10. Zodra de groep is aangemaakt, navigeer naar het Gebruikers tabblad en klik op Nieuwe gebruiker om een nieuwe gebruiker te creëren.

Het vestigen van een robuust kader door gebruikers te groeperen op basis van hun rollen, afdelingen of andere criteria is cruciaal. Dit kader helpt bij het beheren van toegang tot resources en het bevorderen van efficiënte samenwerking binnen uw organisatie.

Creating a new user

11. Stel vervolgens de persoonlijke gegevens van de gebruiker in als volgt:

  • Selecteer IT > Afdelingen > ata > com uit het Achtervoegsel dropdown om de gebruiker in de IT-afdeling te plaatsen.
  • Bij de Persoonlijk tab (linkerpaneel), voer myituser (willekeurig) in het Laatste naam veld.
Setting the ne user’s personal information

12. Configureer de referenties van de nieuwe gebruiker met de volgende:

  • Navigeer naar de Unix tab (linkerpaneel), en zorg ervoor dat de naam van de zojuist aangemaakte groep (d.w.z., Mijn IP-groep) is ingesteld als de Primaire Groep.
  • Klik op Wachtwoord instellen, wat een dialoogvenster opent waar u een wachtwoord voor de nieuwe gebruiker zult instellen (stap 13).
Initiating setting a password for the new user

13. Geef een veilig wachtwoord op voor de nieuwe gebruiker, en klik op OK om te bevestigen.

Providing a secure password

14. Houd andere instellingen zoals ze zijn, en klik op Opslaan om de creatie van het nieuwe gebruikersaccount te finaliseren.

Saving the new user

15. Bekijk de Boomweergave om de bijgewerkte structuur te zien met de nieuwe afdeling (IT), groep (Mijn IP-groep), en gebruikersaccount (myituser) opgenomen.

Verifying the updated structure

Installeren en configureren van de OpenLDAP-client

Nu dat je een geweldige server-setup hebt, heb je een manier nodig om ermee te communiceren door de OpenLDAP-client te installeren en in te stellen. Het opzetten van deze client is essentieel voor het mogelijk maken van centrale authenticatie en toegang tot resources in je netwerk.

Het integreren van je Ubuntu-systeem met de LDAP-directoryserver stelt een geïntegreerde authenticatiemechanisme in, die de beveiliging verbetert en het beheer van gebruikers vereenvoudigt.

Om de OpenLDAP-client te installeren en in te stellen, volg deze stappen:

1. Voer de volgende sh-opdracht uit om de hostnaam en het IP-adres van de OpenLDAP-server toe te voegen aan je clientmachine in het /etc/hosts-bestand, waardoor communicatie op basis van hostnaam mogelijk wordt.

Vergeet niet om 192.168.1.7 en ldap.ata.com te vervangen door het IP-adres en de hostnaam van je server.

sudo sh -c 'echo "192.168.1.7 ldap.ata.com" >> /etc/hosts'
Adding the OpenLDAP server’s hostname and IP address to the hosts file

2. Zodra deze is toegevoegd, voer de onderstaande ping-opdracht uit om de verbinding tussen je systeem en je OpenLDAP-server te controleren (ldap.ata.com).

ping -c3 ldap.ata.com

Het onderstaande resultaat bevestigt dat de clientmachine succesvol kan communiceren met de OpenLDAP-server met behulp van het opgegeven IP-adres en de hostnaam.

Pinging the LDAP server

3. Voer vervolgens de onderstaande opdracht uit om je pakketlijsten te update en de volgende noodzakelijke OpenLDAP-clientpakketten te install:

  • libnss-ldap – Hiermee kan je systeem LDAP gebruiken voor algemene configuratie databases.
  • libpam-ldap – Hiermee kan systeemverificatie plaatsvinden tegen LDAP-directory’s.
  • ldap-utils – Biedt opdrachtregelgereedschappen voor het beheren van LDAP-directoryvermeldingen.
  • nscd – Cachet NSS-zoekopdrachten, waardoor de prestaties worden verbeterd door het verminderen van LDAP-serverquery’s.
sudo apt update && sudo apt install libnss-ldap libpam-ldap ldap-utils nscd -y

Tijdens de installatie krijg je een reeks prompts om de OpenLDAP-client te configureren (stap vier).

Updating the package lists and installing the necessary OpenLDAP client packages

4. Voer nu ldap://192.168.1.7 in het LDAP-server Uniform Resource Identifier veld in, wat de client naar uw OpenLDAP-server stuurt.

Setting the LDAP server Uniform Resource Identifier

5. Voer de DN van de zoekbasis in (bijv. dc=ata,dc=com) voor LDAP-bewerkingen.

Entering the DN of the search base

6. Kies 3 voor de LDAP-versie die moet worden gebruikt voor verbeterde beveiliging en functies

Selecting the preferred LDAP version

7. Selecteer vervolgens Ja om de database-admin rechten aan de root-gebruiker te geven.

Making local root a Database admin

8. Daarna kies Nee voor het beheer van de root-account om de LDAP-databaseaanmelding uit te schakelen.

Disabling the LDAP database login

9. Voer het LDAP-account voor root in (bijv. cn=admin,dc=ata,dc=com). Deze configuratie specificeert het beheerdersaccount voor het beheren van LDAP.

Provide the LDAP account for the root

10. Geef een sterke LDAP-rootaccountwachtwoord (adminwachtwoord) op.

Provide an LDAP root account password

11. Na de clientconfiguratie, open het /etc/nsswitch.conf bestand in uw favoriete editor (bijv. nano of vim) om de naamsdienstswitch van uw systeem te configureren.

Dit bestand bepaalt de volgorde van aanbeveling voor waar het systeem naar dingen zoekt zoals gebruikersaccounts, groepen, hosts en diensten.

12. Wijzig de waarde van de volgende regels in het /etc/nsswitch.conf bestand om het volgende op te nemen:

compat – Verwijst naar lokale bestanden zoals /etc/passwd.

ldap – Specificeert het gebruik van LDAP.

Deze configuratie staat het gebruik van LDAP-gebruikersauthenticatie en andere systeemfuncties toe

passwd:         compat systemd ldap
group:          compat systemd ldap
shadow:         compat
Allowing the use of LDAP user authentication

13. Open nu het /etc/pam.d/common-password bestand, zoek en verwijder de use_authtok optie, zoals hieronder aangegeven, bewaar de wijzigingen en sluit het bestand.

Deze actie stelt je in staat om de PAM-wachtwoordinstellingen aan te passen om het door de gebruiker verstrekte wachtwoord te gebruiken.

Adjusting the PAM password settings

14. Open verder het /etc/pam.d/common-session bestand, voeg de volgende regel toe en bewaar en sluit het bestand.

Bij gebruikersaanmelding voegt deze configuratie automatische thuismap-aanmaak toe om ervoor te zorgen dat thuismap wordt gemaakt met de juiste rechten.

session optional pam_mkhomedir.so skel=/etc/skel umask=077
Adding automatic home directory creation upon user login

15. Tot slot, voer de onderstaande opdracht uit om de Name Service Cache Daemon (nscd) opnieuw op te starten en de configuratiewijzigingen toe te passen.

sudo systemctl restart nscd

Controleren van uw OpenLDAP Setup

Met alles op zijn plaats, moet u ervoor zorgen dat uw OpenLDAP server- en clientconfiguraties zoals verwacht werken. U zult testen om te bevestigen dat uw LDAP-directory toegankelijk is, dat gebruikers succesvol kunnen authenticeren en dat gegevens correct worden opgehaald en bijgewerkt.

Om de integriteit en functionaliteit van uw OpenLDAP server- en clientconfiguratie te garanderen, voert u het volgende uit:

Voer de volgende ldapsearch opdracht uit om uw LDAP-directory na te vragen naar alle gebruikersaccounts.

ldapsearch -x -H ldap://192.168.1.7 -b "dc=ata,dc=com"

U zult een uitvoer zien die ongeveer als volgt eruit ziet, met daarin de details van elke gebruiker. Deze uitvoer geeft aan dat de OpenLDAP server correct reageert op uw zoekopdrachten.

Querying the LDAP directory for all user accounts

Ten slotte, probeer in te loggen (su) op het myituser gebruikersaccount.

su - myituser

Een succesvolle login geeft aan dat de authenticatie tegen de OpenLDAP server zoals verwacht werkt.

? Een succesvolle loginbericht wordt niet altijd weergegeven; in plaats daarvan kunt u misschien gewoon ingelogd worden en wordt u geconfronteerd met een nieuw opdrachtprompt, zoals hieronder weergegeven. Als er fouten zijn, worden deze weergegeven en blijft u ingelogd als de huidige gebruiker.

Logging in as the myituser user

Conclusie

Je hebt het gedaan! Uw Ubuntu-server heeft nu een volledig functioneel OpenLDAP-systeem met een beveiligde firewall, een PHP-geactiveerde webserver en een strakke LDAP Account Manager-interface.

Groepen en gebruikersaccounts zijn ingesteld en uw OpenLDAP-client is klaar om verbinding te maken. Zo kunt u er zeker van zijn dat uw server goed presteert.

Neem nu de tijd om de uitgebreide officiële documentatiepagina van OpenLDAP te bekijken, vol met waardevolle tips en trucs. Denk er ook aan om te leren hoe u uw OpenLDAP-server kunt backuppen en herstellen om de veiligheid van uw gebruikersaccounts en configuraties te garanderen.

Source:
https://adamtheautomator.com/openldap/