EDV:LDAP
Einrichten eines LDAP-Clients im KIP
Hier KIP wird die zentrale Nutzerverwaltung in LDAP gemacht. Wenn von KIP-Account die Rede ist, wird damit immer der Account im LDAP gemeint.
Wichtige Angaben:
1. LDAP-Server | ldap.kip.uni-heidelberg.de (129.206.176.40) |
2. LDAP-Server | ldap2.kip.uni-heidelberg.de (129.206.176.149) |
search base | dc=kip,dc=uni-heidelberg,dc=de |
LDAP Version | 3 |
Die Aktuellnen (Beispiel)-Konfigurationsdateien fĂźr das KIP sind alle im KIP-AFS:
/afs/kip/common/etc/LDAP/*
LDAP-Utils
Diese Tools ermĂśglichen unter anderem eine einfache Abfrage auf der Kommandozeile mit ldapsearch.
Installieren der Binaries:
aptitude install ldap-utils
Kurzversion. Kopieren der Konfigurationsdatei aus dem KIP-AFS:
cp --backup=t /afs/kip/common/etc/LDAP/ldap.conf /etc/ldap/ cp --backup=t /afs/kip/common/etc/keys-certs/kip.crt /etc/ssl/
Die /etc/ldap/ldap.conf sollte so aussehen:
URI ldap://ldap.kip.uni-heidelberg.de ldap://ldap2.kip.uni-heidelberg.de BASE dc=kip,dc=uni-heidelberg,dc=de ldap_version 3 TLS_REQCERT allow tls_cacert /etc/ssl/kip.crt
Die Datei kip.crt gibt es hier: KIP-Wurzelzertifikat
NSS (NamensauflĂśsung)
Installieren der Binaries:
aptitude install libnss-ldap
Kurzversion. Kopieren der Konfigurationsdatei aus dem KIP-AFS:
cp --backup=t /afs/kip/common/etc/LDAP/libnss-ldap.conf /etc/ cp --backup=t /afs/kip/common/etc/LDAP/nsswitch.conf /etc/ [ -x /etc/init.d/nscd ] && /etc/init.d/nscd restart
In der /etc/libnss-ldap.conf muss folgendes enthalten sein:
uri ldap://ldap.kip.uni-heidelberg.de/ ldap://ldap2.kip.uni-heidelberg.de/ base dc=kip,dc=uni-heidelberg,dc=de nss_base_passwd ou=people,dc=kip.uni-heidelberg,dc=de nss_base_group ou=group,dc=kip.uni-heidelberg,dc=de
In der /etc/nsswitch.conf an den Einträgen passwd und group ldap hinzufßgen und am besten auch 'compat' durch 'files' ersetzen:
passwd: files ldap group: files ldap shadow: files
Falls vorhanden den nscd (Name Service Cache Daemon) neustarten:
/etc/init.d/nscd restart
Zum testen am besten getent verwenden (userX ist ein LDAP Nutzer):
getent passwd userX
PAM (Pluggable Authentication Modules)
Installieren der Binaries:
aptitude install libpam-ldap
FĂźr die pam_ldap.conf gibt es auch ein Beispiel im KIP-AFS, allerdings kann die Ănderung am Filter (pam_filter) notwendig sein:
cp --backup=t /afs/kip/common/etc/LDAP/pam_ldap.conf /etc/
In der /etc/pam_ldap.conf sollte folgendes enthalten sein:
uri ldaps://ldap.kip.uni-heidelberg.de/ ldaps://ldap2.kip.uni-heidelberg.de/ base dc=kip.uni-heidelberg,dc=de scope sub nss_base_passwd ou=people,dc=kip.uni-heidelberg,dc=de nss_base_group ou=group,dc=kip.uni-heidelberg,dc=de nss_map_attribute uniqueMember member ## Here you can restrict access to only some people (for example KIPGroup S3) pam_filter objectclass=posixAccount #pam_filter &(objectclass=posixAccount)(KIPGroup=S3) pam_password crypt pam_min_uid 1000 ssl on tls_checkpeer no tls_cacertfile /etc/ssl/kip.crt
Die Datei kip.crt gibt es hier: KIP-Wurzelzertifikat
Nun entweder fĂźr den Dienst den man anbieten will pam_ldap.so hinzufĂźgen oder allgemein in den common-*-Dateien. Einige Beispiele fĂźr diese Dateien sind im KIP-AFS:
ls /afs/kip/common/profiles/new-System_*/etc/pam.d/
Beispiel fĂźr eine /etc/pam.d/common-auth:
auth sufficient pam_unix.so nullok_secure auth required pam_ldap.so ignore_unknown_user
Beispiel fĂźr eine /etc/pam.d/common-account:
account sufficient pam_unix.so account required pam_ldap.so ignore_unknown_user
So wird der Nutzer erst lokal ĂźberprĂźft/gesucht und dann im LDAP. |
Die /etc/pam.d/ssh sieht dann zum Beispiel immernoch so aus:
auth required pam_env.so # [1] auth required pam_env.so envfile=/etc/default/locale # Standard Un*x authentication. @include common-auth account required pam_nologin.so # Standard Un*x authorization. @include common-account # Standard Un*x session setup and teardown. @include common-session session optional pam_motd.so # [1] session optional pam_mail.so standard noenv # [1] session required pam_limits.so # Standard Un*x password updating. @include common-password