Servus Stefan! Am Donnerstag, den 19.07.2012, 19:52 +0200 schrieb Stefan Bauer: > > derzeit nutzt mein System pam_unix zum Authentifizieren des Benutzers > gegen /etc/passwd+shadow. > Jetzt hab ich hier einen Server 2008 und würde mich gerne mit pam_ldap > spielen.
Geht schon, kann man machen, ob sinnvoll? Ich würde Kerberos statt LDAP zur Authentifizierung empfehlen und das Ganze einschränken, denn root, admin, nagios etc. brauchen noch Passwörter in /etc/passwd: /etc/pam.d/common-password password sufficient pam_krb5.so minimum_uid=2000 password required pam_unix.so nullok obscure min=4 max=8 md5 /etc/pam.d/common-auth auth sufficient pam_unix.so nullok_secure auth required pam_krb5.so use_first_pass forwardable /etc/pam.d/common-session session optional pam_krb5.so ignore_root session required pam_unix.so /etc/pam.d/common-account account sufficient pam_krb5.so account required pam_unix.so broken_shadow > Ich frage mich, wie es gedacht ist, wo und wie die zusätzlichen Infos > bezogen werden wie: > > UID/GUID > Homedirectory > Shell Dazu benötigst du im AD eine Schemaerweiterung. 2 Wege führen dazu: 1) Unix-Services for Windows (NIS) 2) nur die Schemaerweiterung Einzelheiten habe ich grad nicht im Kopf, also häng dich bitte nicht an Namen auf. Einfach die entsprechende Rolle dem AD hinzufügen, soweit ich das noch im Kopf habe. Nach der Erweiterung kannst du im Benutzerobjekt im AD oben genannte Infos eintragen. Damit Linux das dann auch frisst benötigst du LDAP, NSS und den nscd (besser unscd, weil nscd zu buggy und aufgeblasen). Nscd cached dir die LDAP Einträge, weil bei jedem Zugriff aufs FS uid/gid abgefragt werden, dazu will man nicht wirklich für jedes Objekt eine neue LDAP-Anfrage an den AD starten. /etc/nsswitch.conf: passwd: files ldap group: files ldap shadow: files [..] /etc/libnss-ldap.conf: base dc=domain,dc=com uri ldap://dc.domain.com ldap_version 3 bind_policy soft nss_map_attribute uid sAMAccountName nss_map_attribute homeDirectory unixHomeDirectory nss_map_attribute uniqueMember member nss_map_attribute memberUid nosuchattribute nss_map_attribute userPassword nosuchattribute nss_map_attribute gecos displayName nss_map_attribute shadowLastChange pwdLastSet pam_login_attribute sAMAccountName pam_filter objectclass=User pam_password ad # RFC 2307 (AD) mappings nss_map_objectclass posixAccount User nss_map_objectclass posixGroup Group nss_map_objectclass shadowAccount User nss_map_attribute objectClass objectCategory use_sasl on # Use paged results nss_paged_results yes pagesize 1000 referrals no # Disable SASL security layers. This is needed for AD. SASL_SECPROPS maxssf=0 # Override the default Kerberos ticket cache location. krb5_ccname FILE:/var/run/nscd/krb5cc nss_initgroups_minimum_uid 2000 Und die zugehörige LDAP Konfiguration: /etc/ldap/ldap.con: BASE dc=domain,dc=com HOST dc.domain.com SASL_MECH gssapi bind_policy soft TLS_CACERT /etc/ssl/domain.com-CA-cacert.pem Damit die LDAP-Authentifizierung am AD auch mit Kerberos statt simple_bind funktioniert, muss noch kstart laufen (der füttert die /var/run/nscd/krb5cc mit den entsprechenden credentials aus der Keytab und erneuert die Tickets regelnmässig). /usr/bin/k5start -b -p /var/run/k5start.pid -K 60 -f /etc/krb5.keytab -k /var/run/nscd/krb5cc short_hostname simple_bind ist das, was du möchtest, wenn du nur LDAP machst. SSL am AD habe ich noch nicht implementiert, TLS hingegen klappt prima! Bei LDPA only muss halt die /etc/pam.d/common-* entsprechend anpassen, dazu findet man aber genug Know-How im Internet. Kerberos ist ein eigenes Thema. SPN und UPN muss für die Maschine im AD erstellt worden sein und mit kinit auch auf dem Linux-Rechner eingerichtet worden sein. Können wir bei Bedarf mal vis-avis durchgehen. Kerberos ist halt toll, weil man sich eine SSO Lösung ins Haus holt und die Basis für sicheres NFSv4 schafft. Noch Fragen? ;-) LG -- --------------------------------------------------------------------------- copyleft(c) by | _-_ Avoid the Gates of Hell. Use Linux (Unknown Peter Allgeyer | 0(o_o)0 source) ---------------oOO--(_)--OOo----------------------------------------------- _______________________________________________ lug-ts mailing list [email protected] http://www.lug-ts.de/mailman/listinfo/lug-ts
