Een LDAP server installeren
LDAP ?!
LDAP en zijn gebruiken uitgelegd.
LDAP staat voor Lightweight Directory Access Protocol.
Met OpenLDAP kun je informatie opslaan in een boomstructuur en deze beschikbaar maken voor anderen. Zo kun je bijvoorbeeld een complete adres- en e-mail- boom maken, of je zet de complete structuur van een bedrijf op met OpenLDAP.
In deze HOWTO zullen we de installatie van een OpenLDAP server onder SuSE Linux 7.0 beschrijven.
Waarom deze HOWTO schrijven? We moesten een LDAP server opzetten en vonden de bestaande HOWTOs op het Internet te complex, dus moesten we op ons zelf met LDAP stoeien.
De Installatie
OpenLDAP installeren is vrij eenvoudig. Selecteer de beide pakketten openldap.rpm
en ldaplib.rpm
welke in de subgroep
"n"
kunnen worden gevonden.
Nu dien je een paar configuratiebestanden aan te passen.
Ga naar
"/etc/openldap"
en bewerk het bestand
ldap.conf
We leggen de configuratie uit met behulp van ons bestand als voorbeeld:
| /etc/openldap/ldap.conf |
##########/etc/openldap/ldap.conf######### # Meer details in de man pagina ldap.conf(5) # Dit bestand zou globaal leesbaar moeten zijn # hier specificeer je de LDAP server: hostnaam en IP adres host 127.0.0.1 # bij het opzoeken van het antwoord, is dit het beginpunt # van de database boom van je directory base o=testnet.de # dat is alles ############################################ |
Vervolgens bewerk je het bestand sladp.conf.
| /etc/openldap/slapd.conf |
######### /etc/openldap/slapd.conf ########### # dit bestand moet niet globaal leesbaar zijn # slapd.at.conf <-- hier vind je een beschrijving # van de attributen # slapd.oc.conf <-- hier vind je een beschrijving # van de object klassen (class) include /etc/openldap/slapd.at.conf include /etc/openldap/slapd.oc.conf schemacheck off pidfile /var/run/slapd.pid argsfile /var/run/slapd.args # instellingen voor de LDAP database # hier geef je aan welke database gebruikt dient te # worden database ldbm # Suffix / root directory. Dit is de hoogste ingang in de # LDAP directory suffix "o=testnet.de" # Hier wordt de LDAP database opgeslagen directory /var/lib/ldap # De naam van de beheerder van deze directory rootdn "cn=Manager, o=testnet.de" # hier geef je het beheerders wachtwoord op rootpw secret ############################################ |
Nu kan de OpenLDAP server worden gestart.
Daarvoor gebruik je:
/sbin/init.d/ldap start
en de server zou moeten starten!
Creëren van een database
Het creëren van een database is vrij complex omdat je de hele structuur van te voren moet weten.
In dit deel proberen we de opzet van een database te beschrijven door de onze te gebruiken en uit te leggen hoe data en container objecten toe te voegen.
Eerst zet je een nieuwe "ldif" op in /etc/openldap:
>> cd /etc/openldap >> mkdir ldif >> cd ldif
Hier creëer je je database met een willekeurig editor. We noemen deze datenbank.ldif .
| datenbank.ldif |
dn: o=testnet.de o: testnet.de objectclass: top objectclass: organization dn: ou=linux, o=testnet.de ou: linux objectclass: organizationalUnit dn: uid=tover, ou=linux, o=testnet.de uid: tover cn: Tom Over sn: Over givenname: Tom objectclass: person userpassword: clearpass mailacceptinggeneralid: overmindtom@gmx.net ou: linux dn: uid=tslider, ou=linux, o=testnet.de uid: tslider cn: The Slider sn: Slider givenname: The objectclass: person userpassword: clearpass mailacceptinggeneralid: slider_e-mai@gmx.de ou: linux |
Nu is de eerste database opgezet en moet deze worden toegevoegd aan de LDAP server!
Dit gaat met het commando:
>> ldapadd -D "cn=Manager, o=testnet.de" -w secret < /etc/openldap/ldif /datenbank.ldif
Het programma zou dat commando moeten kopiëren.
Om te controleren dat het werkte, kun je het volgende commando gebruiken:
>> ldapsearch uid=tover
Nu zou je alle beschikbare informatie over dit "uid" moeten krijgen.
Meer data sets toevoegen
Meer data sets toevoegen vereist een een nieuw bestand. Deze noemen we new.ldif.
| new.ldif |
dn: uid=mmuster, ou=linux, o=testnet.de uid: mmuster cn: Max Maxample sn: Maxample givenname: Max objectclass: person userpassword: clearpass mailacceptinggeneralid: mmaxample@testnet.de ou: linux |
>> ldapadd -D "cn=Manager, o=testnet.de" -w secret < /etc/openldap/ldif /new.ldif
Meer containter objecten toevoegen:
Er zijn vergelijkbare stappen nodig als je een ander container object wilt toevoegen. Wederom creëer je een bestand, deze keer met de naam container.ldif.
| container.ldif |
dn: ou=abt2, o=testnet.de ou: abt2 objectclass: organizationalUnit dn: uid=hworst, ou=abt2, o=testnet.de uid: hworst cn: Hans Worst sn: Worst givenname: Hans objectclass: person userpassword: clearpass mailacceptinggeneralid: hworst@testnet.de ou: abt2 |
Dit container object voeg je toe met het commando ldapadd:
>> ldapadd -D "cn=Manager, o=testnet.de" -w secret < /etc/openldap/ldif /container.ldif
Nu bestaat de gebruiker met het id hworst in deze container. We hopen dat de syntax je duidelijk wordt met het volgen van deze voorbeelden.
(Een ander manier van beheren is door gebruik te maken van de tool kldap, al zullen we deze nu niet beschrijven!)
De informatie bekijken met Netscape
Je kunt de LDAP server benaderen met het adres boek van Netscape. We beschrijven hoe dit werkt.
Start Netscape en klik op:
Communicator
> Adress Book
Kies File en kies een nieuwe Directory. Hier vul je de bijbehorende velden in:
Nu kun je de data doorzoeken met "Zoek naar...".
Dat zou alles moeten zijn! We hopen dat we het makkelijker voor je hebben gemaakt om een LDAP server op te zetten.
