LDAP Linux System (PAM, NSS)
Aus MHC-Wiki
NSSWITCH
Wieder schien es leicht doch im Endefekt haben mich die diversen HOWTO's doch kräftig in die Irre geführt. ZunÃ?chst brauchen wir das passende Paket:
apt-get install libnss-ldap
Dann braucht man einen "Dummy-User" mit dem man sich am LDAP server anmelden kann. Meiner sieht folgendermassen aus:
dn:cn=nss,dc=mhcsoftware,dc=de
cn: nss
objectClass: simpleSecurityObject
objectClass: organizationalRole
userPassword: {CRYPT}xxxxxxxxx
description: LDAP NIS User
Jetzt mÃ?ssen in der /etc/libnss-ldap.conf folgende EintrÃ?ge stehen:
host 127.0.0.1 base ou=People,dc=mhcsoftware,dc=de uri ldap://127.0.0.1:389/ ldap_version 3 binddn cn=nss,dc=mhcsoftware,dc=de bindpw linux port 389 nss_base_passwd dc=mhcsoftware,dc=de?one nss_base_group dc=mhcsoftware,dc=de?one
Wenn mann die passenden LDAP Objekte hat, dann kann man im Prinzip auch schreiben:
nss_base_passwd ou=Prople,dc=mhcsoftware,dc=de?one nss_base_group ou=Group,dc=mhcsoftware,dc=de?one
Wenn man aber Samba 3 als PDC betreiben will, wird das SO nicht funktionieren sondern die zuerst gezeigt Schreibweise muss verwendet werden. Dies liegt daran, dass Samba auch fÃ?r Maschinen Accounts eine NSS abfrage per "passwd" macht. Wenn man seine Samba Maschinen Account auch in "ou=People" hÃ?lt, dann macht die 2. Schreibweise kein Problem. Hat man dafÃ?r aber der Ã?bersichtlichkeit hablber eine eigen OU, dann wird dieser lookup fehlschlagen undPC\'s werden es nie schaffen in die DomÃ?ne aufgenommen zu werden. Wenn man nun bei den Gruppen auch das OU weglÃ?sst, dann macht man sich von der Schreibweise der Gruppen OU unabhÃ?nig was sicher auch nicht schlecht ist, denn der eine empfihelt "Group" und der nÃ?chste "Groups" usw. das kann leicht ins abseits fÃ?hren.
FÃ?r die Datei /etc/nsswitch.conf sieht man unterschiedliche VorschlÃ?ge im Netz. Die drei wichtigsten sind bei den EintrÃ?gen fÃ?r "passwd", "group" und "shadow":
- ldap files
- ldap compat
- files ldap
FÃ?r mich war nur die letzte Version brauchbar. Die beiden anderen machten vorallem beim Systemstart und -stop Ãrger. Das problem da bei ist, das NSS stetig benutzt wird um User und Gruppen zu mappen. Wenn der LDAP server aus irgend einem Grund nicht lÃ?uft, dann benötigt jeder NSS Lookup bis zu 120 Sekunden bis zu seinem Timeout. Dies fÃ?rht dazu, dass Start- und Stopprozesse zu hÃ?ngen scheinen. Ausserdem spart das unnötige LDAP lookups fÃ?r Systemaccounts, die ggf. garnicht im Directory vorhanden sind. Meine /etc/nsswitch.conf sieht wie folgt aus:
.... passwd: files ldap compat group: files ldap compat shadow: files ldap compat ....
"finger" sollte jezt auch fÃ?r user die nur im LDAP server angelegt sind etwas brauchbares liefern.
UNGELÃSTES PROBLEM: wenn ich mich remote per SSH anlogge, dann steht in meinem Prompt "I have no name!@server:~$". Dies hat irgend etwas mit dem NSS zu tun. Nur ich konnte noch nicht herausfinden, was. die LDAP Abfragen, die NSS und auch Pam machen, waren aller efolgreich, deshalb konnte ich den Fehler noch nicht eingrenzen.
Siehe auch: [1]
PAM
ZunÃ?chst muss das PAM Modul fÃ?r die LDAP Authentifizierung installiert werden:
apt-get install libpam-ldap
Dann mÃ?ssen die LDAP Daten in der Datei "/etc/pam_ldap.conf" eingetragen werden:
host 127.0.0.1 base dc=mhcsoftware,dc=de uri ldap://127.0.0.1:389/ ldap_version 3 binddn cn=nss,dc=mhcsoftware,dc=de bindpw linux port 389 pam_password md5
Auf Debian Sarge werden fÃ?r die Konfiguration der PAM Module Includes verwendet die sich in "/etc/pam.d" finden:
common-account common-auth common-password common-session
Dort muss jeweils als ein entsprechender Eintrag gemacht werden. Bei mir ergibt sich das problem, dass so bald diese eintr�ge gemacht sind, f�r system-lokale Accounts (z.b. root) das Passwort immer 2 mal abgefragt wird. Dieses problem l�sst sich lösen, in dem man in der datei "common-auth" bei dem LDAP eintrag "use_first_pass" benutzt. Das sieht dann z.b. so aus:
auth sufficient pam_unix.so nullok_secure auth required pam_ldap.so use_first_pass
Da verschiedentlich empfohlen wird, "pam_unix" zu ert mit "sufficient" und als zweites "pam_ldap" mit "required"zusetzen, habe ich das auch in allen 4 Datein so gemacht.
Siehe auch: [2] [3] 43985381373
Buy Viagra Buy Phentermine Buy Cialis Buy Levitra

