Lightweight Directory Access Protocol (LDAP)
LDAP - Erste Schritte - Installation - Konfiguration
Hier wird nur ein kleines Teil des Verzeichnisdienstes (LDAP) beschrieben. Der Dienst wird installiert und konfiguriert vor allem für Mail-Client z.B. Thunderbird-Adressbuch und auch für Samba, einem Fileserver.
Die wichtigste Keywords in Active Directory LDAP
cn: Common Name
ou: Organisational Unit
dc: Domain Component
Einige andere Keywords
l: Location (Standort)
o: Organisation
st: Staat/Provinz/Bundesland
c: Country
Nicht alle Container innerhalb einer ADS-Domäne sind OU-Objekte. Einige sind CN-Objekte wie z.B. "Users", "Computers", und "Builtin".
Wir beginnen selbstverständlich mit der Installation des Betriebssystems
Es wird Grundinstallation von openSuSE 11.2 vorgenommen. Danach noch die folgende Pakete nachinstallieren
- openldap2
- nss_ldap
- pam_ldap
Den Dienst ldap dauerhaft in Yast unter System Services (Runlevel) aktivieren (einschalten)
- Die Firewall ausschalten. Erst wenn alles funktioniert wird die wieder eingeschaltet.
- Computername: ldapserver
- Domäne: site
- IP-Adresse: 192.168.0.210 Maske: 255.255.255.0
- Gateway: 192.168.0.1
- DNS: 192.168.0.200
gewünschte Domäne: monoplan.de
gewünschtes Passwort: secret
Um die Zeichenkette des gewünschten Passwortes in verschlüsselter Form zu erfahren. schreiben Sie in dem Shell-Fenster den folgenden Befehl: slappasswd. Danach zweimal das Passwort eingeben. Die konvertierte Zeichenkette in Datei /etc/openldap/slapd.conf unter rootpw eintragen.
Wichtig: Wenn das Paket: yast2-ldap-server installiert wurde, ist diese Datei ungültig. Den LDAP-Server muss man im YaST konfigurieren. Auch wenn dieses Paket wieder deinstalliert wird, ist die Datei /etc/openldap/slapd.conf immer noch ungültig. Will man denoch die Datei benutzen, muss man die Datei /etc/sysconfig/openldap anpassen.
## nicht installiert ist
## Path: Network/LDAP
## Description: Basic Configuration of the
## OpenLDAP Directory Server
OPENLDAP_START_LDAP="yes"
OPENLDAP_START_LDAPS="no"
OPENLDAP_START_LDAPI="no"
OPENLDAP_SLAPD_PARAMS=""
OPENLDAP_USER="ldap"
OPENLDAP_GROUP="ldap"
OPENLDAP_CHOWN_DIRS="yes"
OPENLDAP_LDAP_INTERFACES=""
OPENLDAP_LDAPS_INTERFACES=""
OPENLDAP_LDAPI_INTERFACES=""
OPENLDAP_REGISTER_SLP="yes"
OPENLDAP_KRB5_KEYTAB=""
OPENLDAP_CONFIG_BACKEND=""
## installiert ist
## Path: Network/LDAP
## Description: Basic Configuration of the
## OpenLDAP Directory Server
OPENLDAP_START_LDAP="yes"
OPENLDAP_START_LDAPS="no"
OPENLDAP_START_LDAPI="yes"
OPENLDAP_SLAPD_PARAMS=""
OPENLDAP_USER="ldap"
OPENLDAP_GROUP="ldap"
OPENLDAP_CHOWN_DIRS="yes"
OPENLDAP_LDAP_INTERFACES=""
OPENLDAP_LDAPS_INTERFACES=""
OPENLDAP_LDAPI_INTERFACES=""
OPENLDAP_REGISTER_SLP="no"
OPENLDAP_KRB5_KEYTAB=""
OPENLDAP_CONFIG_BACKEND="ldap"
1.
Die Datei /etc/openldap/slapd.conf entsprechend unserem bedürfnissen anpassen. In der Datei die Zeilen suffix, rootdn, und rootpw ändern.
# See slapd.conf(5) for details on configuration options.
# This file should NOT be world readable.
#
include /etc/openldap/schema/core.schema
include /etc/openldap/schema/cosine.schema
include /etc/openldap/schema/inetorgperson.schema
include /etc/openldap/schema/nis.schema
include /etc/openldap/schema/yast.schema
include /etc/openldap/schema/samba3.schema
pidfile /var/run/slapd/slapd.pid
argsfile /var/run/slapd/slapd.args
access to dn.base=""
by * read
access to dn.base="cn=Subschema"
by * read
access to attrs=userPassword,userPKCS12
by self write
by * auth
access to attrs=shadowLastChange
by self write
by * read
access to *
by * read
database bdb
suffix "dc=monoplan,dc=de"
checkpoint 1024 5
cachesize 10000
rootdn "cn=Manager,dc=monoplan,dc=de"
# Cleartext passwords, especially for the rootdn, should
# be avoid. See slappasswd(8) and slapd.conf(5) for details.
# Use of strong authentication encouraged.
rootpw {SSHA}j6qX/iSEfm8b/PIqP8/ed2dlIBqx6O6A
# The database directory MUST exist prior to running slapd AND
# should only be accessible by the slapd and slap tools.
# Mode 700 recommended.
directory /var/lib/ldap
# Indices to maintain
index objectClass eq
index cn pres,sub,eq
index sn pres,sub,eq
index uid pres,sub,eq
index displayName pres,sub,eq
index uidNumber eq
index gidNumber eq
index memberUID eq
index sambaSID eq
index sambaPrimaryGroupSID eq
index sambaDomainName eq
index default sub
2.
die Datei /etc/openldap/ldap.conf anpassen.
URI ldap://localhost
TLS_REQCERT allow
3.
Unter http://ldapadmin.sourceforge.net/ finden Sie ein Windows Programm LDAPAdmin. Mit dem Programm können Sie die Verbindung zu dem LDAP-Server testen bzw. einige Daten eintragen. Sie können das Programm auf einem Windows Client installieren und die Verbindung aufbauen.
Bei diesem Zustand des LDAP-Servers bekommen Sie aber nach der Verbindung eine Fehlermeldung, dass kein Objekt gefunden wurde. In nächstem Schritt werden wir einige Objekte einfügen.

4.
Die Daten in LDAP können wir auf zwei verschiedene Weise eintragen bzw. pflegen. Bei der ersten Methode werden LDAP shell-Befehle verwendet. Einige werden auch hier beschrieben. Die Zweite Mothode ganz bequem per Web-Interface. Dazu lesen Sie den Abschnitt Samba mit LDAP.
Hier machen wir weiter mit den Shell-LDAP Befehlen.
5.
Zuerst erstellen wir ein Datei mit dem Namen z.B. ou.ldif und mit dem folgenden Inhalt
objectClass: organization
objectClass: dcObject
dc: monoplan
o: monoplan
dn: ou=users,dc=monoplan,dc=de
objectClass: organizationalUnit
ou: users
dn: ou=groups,dc=monoplan,dc=de
objectClass: organizationalUnit
ou: groups
dn: ou=computers,dc=monoplan,dc=de
objectClass: organizationalUnit
ou: computers
dn: ou=domains,dc=monoplan,dc=de
objectClass: organizationalUnit
ou: domains
danach können wir die Objekte mit dem Befehl ldapadd in den Verzeichnisdienst einfügen
6.
Es kann man weitere Ldap-Befehle wie ldapmodify, ldapdelete, ldapexop, ldapmodrdn, ldapsearch, ldapchangepwd, ldapdiff verwenden oder ganz einfach weiter mit dem Windows Programm Ldap Admin arbeiten.
Wenn die Benutzer eingetragen werden, kann man den Server als LDAP E-Mail Adressbuch verwenden.