LDAP - Lightweight Directory Access Protocol
Installation Fedora Core / Red Hat
Pakete installieren, falls nicht schon geschehen.
[root@hammer]# rpm -ihv openldap-2.1.29-1.i386.rpm \
openldap-servers-2.1.29-1.i386.rpm nss_ldap-217-1.i386.rpm \
openldap-clients-2.1.29-1.i386.rpm
Um Benutzer, Gruppen etc. in das LDIF-Format zu konvertieren
werden die MigrationTools benötigt http://www.padl.com/
Im Beispiel verwendeter Server
LDAP Server: 192.168.1.2
Konfiguration - Server - /etc/openldap/slapd.conf
# ----------------------------------------------------
# /etc/openldap/slapd.conf - Start
# ----------------------------------------------------
#
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/
misc.schema
include /etc/openldap/schema/
redhat/autofs.schema
schemacheck off
# LDAPv2 Client Verbindungen erlauben.
#
allow bind_v2
pidfile /var/run/slapd.pid
# Um ein eigenes Zertifikat zu erstellen, bitte in das Verzeichnis
# /usr/share/ssl/certs wechseln und make slapd.pem ausführen.
# Der LDAP Benutzer muss Leserechte für die Datei slapd.pem haben.
#
TLSCACertificateFile /usr/share/ssl/certs/ca-bundle.crt
TLSCertificateFile /usr/share/ssl/certs/slapd.pem
TLSCertificateKeyFile /usr/share/ssl/certs/slapd.pem
# ldbm Definitionen
#
database ldbm
suffix "dc=test-net,dc=de"
rootdn "cn=Manager,dc=test-net,dc=de"
#
# Um ein verschlüsseltes root Passwort zu generieren
# benutzen Sie bitte /usr/sbin/slappasswd -c CRYPT -s passwort
# das Ergebnis kopieren und in diese Datei einfügen
# rootpw {CRYPT}Ergebnis.
#
rootpw {CRYPT}CR.FKESiUdc1M
# Das Verzeichnis muss vor dem Ersten Start existieren.
#
directory /var/lib/ldap
# Indexe definieren
#
index objectClass eq,pres
index ou,cn,mail,surname,givenname eq,pres,sub
index uidNumber,gidNumber,loginShell eq,pres
index uid,memberUid eq,pres,sub
index nisMapName,nisMapEntry eq,pres,sub
# Zugriffsrechte definieren
#
access to attr=userPassword
by dn.base="cn=Manager,dc=test-net,dc=de" write
by self write
by anonymous auth
by * none
# Damit Benutzer in eigenem Verzeichnis Einträge
# hinzufügen, ändern oder löschen können.
#
access to dn="^.*,uid=([^,]+),ou=People,(.*)$"
by dn="uid=$1,ou=People,$2" write
by * none
access to *
by dn.base="cn=Manager,dc=test-net,dc=de" write
by self write
by * read
# ----------------------------------------------------
# /etc/openldap/slapd.conf - Ende
# ----------------------------------------------------
Konfiguration - Server - /etc/openldap/ldap.conf
# ----------------------------------------------------
# /etc/openldap/ldap.conf - Start
# ----------------------------------------------------
#
SIZELIMIT 12
TIMELIMIT 15
DEREF never
BASE dc=test-net,dc=de
URI ldaps://192.168.1.2
TLS_REQCERT allow
# ----------------------------------------------------
# /etc/openldap/ldap.conf - Ende
# ----------------------------------------------------
LDAP Server starten
[root@hammer]# /sbin/service ldap start
Starten des LDAP Servers bei nächstem Systemstart aktivieren.
[root@hammer]# /sbin/chkconfig --level 345 ldap on
Mit Hilfe der MigrationTools werden /etc/passwd
und /etc/group in das LDIF-Format konvertiert.
Zuerst müssen noch einige Variablen in der
Konfigurationsdatei "migrate_common.ph" angepasst werden.
$DEFAULT_MAIL_DOMAIN = "test.de";
$DEFAULT_BASE = "dc=test,dc=de";
$DEFAULT_MAIL_HOST = "mail.test.de";
# Für die Authentifizierung benötigte Dateien erstellen
#
[root@hammer /usr/MigrationTools-45]# ./migrate_base.pl > /etc/openldap/base.ldif
[root@hammer /usr/MigrationTools-45]# ./migrate_passwd /etc/passwd /etc/openldap/passwd.ldif
[root@hammer /usr/MigrationTools-45]# ./migrate_group.pl /etc/group /etc/openldap/group.ldif
Jetz die erstellten LDIF-Dateien dem LDAP-Server hinzufügen.
# Die Reihenfolge ist wichtig
#
[root@hammer]# /usr/bin/ldapadd -x -D "cn=Manager,dc=test,dc=de" -W -f /etc/openldap/base.ldif
[root@hammer]# /usr/bin/ldapadd -x -D "cn=Manager,dc=test,dc=de" -W -f /etc/openldap/group.ldif
[root@hammer]# /usr/bin/ldapadd -x -D "cn=Manager,dc=test,dc=de" -W -f /etc/openldap/passwd.ldif
Als LDAP-Passwort wird "passwort" eingegeben. Das Passwort
nachher unbedingt ändern wie in der slapd.conf beschrieben.
Firewall Port 636 öffnen für die Clients
Konfiguration - Client /etc/openldap/ldap.conf
# ----------------------------------------------------
# /etc/openldap/ldap.conf - Start
# ----------------------------------------------------
#
SIZELIMIT 12
TIMELIMIT 15
DEREF never
BASE dc=test-net,dc=de
URI ldaps://192.168.1.2
TLS_REQCERT allow
# ----------------------------------------------------
# /etc/openldap/ldap.conf - Ende
# ----------------------------------------------------
Konfiguration - Client /etc/ldap.conf
# ----------------------------------------------------
# /etc/ldap.conf - Start
# ----------------------------------------------------
#
# LDAP Server
#
host 192.168.1.2
# Suchbasis
#
base dc=test-net,dc=de
# Standard ist der Port 389
# Wir benutzen den sicheren Port 636
#
port 636
# LDAP Server Zertifikat nicht überprüfen
#
tls_checkpeer no
ssl on
pam_password md5
# ----------------------------------------------------
# /etc/openldap/ldap.conf - Ende
# ----------------------------------------------------
Konfiguration - Client /etc/nsswitch.conf
# ----------------------------------------------------
# /etc/nsswitch.conf - Start
# ----------------------------------------------------
#
passwd: files ldap
shadow: files ldap
group: files ldap
hosts: files dns
bootparams: nisplus [NOTFOUND=return] files
ethers: files
netmasks: files
networks: files
protocols: files ldap
rpc: files
services: files ldap
netgroup: files ldap
publickey: nisplus
automount: files ldap
aliases: files nisplus
# ----------------------------------------------------
# /etc/nsswitch.conf - Ende
# ----------------------------------------------------
Jetzt sollte eine Anmeldung ohne Probleme möglich sein.
Vergessen Sie bitte nicht das /home Verzeichnis der Benutzer zu exportieren.
Mehr Informationen finden Sie unter [ http://www.openldap.org ]
14.07.2004 © Edy Corak