Ich habe die PAM-Authentifizierung für die Verwendung von Kerberos konfiguriert und kann mich bei meinen Principals mithilfe ihrer Kerberos-Anmeldeinformationen korrekt authentifizieren.
Ich hatte Probleme, als ich versuchte, einen Principal mit einem abgelaufenen Passwort zu erstellen:
kadmin: addprinc +needchange test_principal
Als ich versuchte, mich anzumelden (entweder von einem VT oder dem grafischen Begrüßer), erhielt ich nach korrekter Eingabe des Kennworts die erwartete Meldung, dass das Kennwort abgelaufen ist, und das System forderte mich auf, ein neues zu erstellen. Nachdem ich das getan hatte, schlug die Authentifizierung mit dem folgenden Fehler fehl kdc.log
:
krb5kdc[...](info): TGS_REQ (4 etypes {18 17 16 23}) 192.168.0.200: NO PREAUTH: authtime 0, test_principal@MY.REALM for host/server.my.realm@MY.REALM, Generic error (see e-text)
und der folgende (nicht so überraschende) Fehler in /var/log/auth.log
:
pam_krb5(gdm3:auth): (user test_principal) credential verfication failed: KDC returned error string: NO PREAUTH
Einige Notizen
- Das Auflisten der Attribute des Principals (via
getprinc
inkadmin.local
) zeigt 0 fehlgeschlagene Anmeldeversuche an - Wenn ich das Konto ohne
+needchange
Flag erstelle , kann ich mich korrekt authentifizieren. - Wenn ich das
+needchange
Flag (viamodprinc
inkadmin.local
) hinzufüge, nachdem sich der Benutzer einmal erfolgreich authentifiziert hat, erhalte ich das erwartete Verhalten. Der Benutzer wird nämlich aufgefordert, sein Kennwort zu ändern, und dann ist seine Authentifizierung erfolgreich. - Dieser Principal hat keinen entsprechenden Eintrag in
/etc/passwd
, wird jedoch durch einen LDAP-Eintrag gesichert. Wie an anderer Stelle vorgeschlagen, habe ich versucht, mein Prinzip wie folgt zu erstellen:
kadmin: addprinc -requires_preauth +needchange test_principal
Das machte keinen Unterschied.
Mein Anwendungsfall
Ich migriere von einem alten NIS-System und möchte meinen Benutzern Kontinuität bieten. Ich möchte, dass sie ihre alten Passwörter eingeben, aber dann gezwungen werden, sie zu ändern, um den strengeren Regeln für Passwortrichtlinien zu entsprechen, die ich über Kerberos durchsetzen möchte.
Ich verwende MIT Kerberos V auf Debian Wheezy.