Hier nun eine Anleitung für Debian zur Benutzer-Authentifizierung mit libpam über LDAP.
Zuerst die benötigten Debian-Pakete installieren:
apt-get install libnss-ldap libpam-ldap |
Einrichtung (Beispiel):
LDAP server URI: ldap://serverip/_ Distinguished name of the search base: dc=freifunk,dc=net LDAP version to use: 3 LDAP account for root: cn=admin,dc=freifunk,dc=net LDAP root account password: password LDAP administrative account: cn=admin,dc=freifunk,dc=net LDAP administrative password: password |
Danach muss das ldap in die /etc/nsswitch.conf eingetragen werden:
passwd: compat ldap group: compat ldap shadow: compat ldap |
Wenn man nun ein „getent passwd“ ausführt, bekommt man alle lokalen Benutzer und die des LDAP angezeigt:
getent passwd max:*:46813:0:Max Mustermann:/home/max:/bin/bash test:*:7901:500:test tester:/home/test:/bin/bash |
Damit die Benutzer jetzt Systemweit für Lokalen Login und SSH-Login benutzt werden können müssen die korrekten ou´s in die configs eingetragen werden:
/etc/libnss-ldap.conf
nss_base_passwd ou=users,dc=freifunk,dc=net nss_base_shadow ou=users,dc=freifunk,dc=net nss_base_group ou=groups,dc=freifunk,dc=net |
/etc/pam_ldap.conf
nss_base_passwd ou=users,dc=freifunk,dc=net nss_base_shadow ou=users,dc=freifunk,dc=net nss_base_group ou=groups,dc=freifunk,dc=net |
Danach einmal nscd und sshd neu starten:
#> /etc/init.d/nscd restart [ ok ] Restarting Name Service Cache Daemon: nscd. #> /etc/init.d/ssh restart [ ok ] Restarting OpenBSD Secure Shell server: sshd. |
Und dann sollte auch der Login funktionieren 🙂
Hier die Übersicht der einzelnen Teile:
1. OpenLDAP Kompilieren
2. OpenLDAP Einrichtung
3. OpenLDAP Suchfilter
4. PAM mit LDAP
5. Einrichtung Openssh mit Public Key
6. Beispiel-Template für LDAPAdmin
7. TestSystem & Beispiele
8. SSL und TLS in OpenLDAP
Login