
Ich habe ein paar Boxen umgestellt aufSSSD, sodass sie sich jetzt gegenüber einem zentralen LDAP-Server authentifizieren und die Anmeldeinformationen zwischenspeichern, wenn ich offline bin. Das funktioniert einwandfrei und die Ubuntu-Pakete wurden problemlos installiert.
Aber wenn ich mich jetzt anmelde, wird mein Home-Verzeichnis nicht mehr automatisch entschlüsselt/gemountet. Wenn ich GDM verlasse und mich an der Konsole anmelde, wird mir dieser Fehler angezeigt:
keyctl_seach Required key not avaliable
Wenn ich den vorgeschlagenen Befehl ausführe (ecryptfs-mount-privat) und gebe mein Passwort ein. Dann ist mein Home-Verzeichnis problemlos entsperrt.
Ich versuche zu verstehen, wie sich der Anmeldevorgang geändert hat, sodass mein Passwort den Verschlüsselungsschlüssel nicht mehr automatisch entsperrt. Ich gehe davon aus, dass es sich um ein PAM-Problem handelt, also habe ich meine/etc/pam.d/common-authDatei unten.
Ich gehe davon aus, dass das Passwort an SSSD weitergegeben wird und dann der übliche Schritt zum Entsperren des Schlüssels übersprungen wird. Kann jemand erklären, wie das normalerweise gemacht wird?
auth [success=3 default=ignore] pam_sss.so
auth [success=2 default=ignore] pam_unix.so nullok_secure try_first_pass
auth [success=1 default=ignore] pam_winbind.so krb5_auth krb5_ccache_type=FILE cached_login try_first_pass
auth requisite pam_deny.so
auth required pam_permit.so
auth optional pam_ecryptfs.so unwrap
UPDATE 1:
auth.log meldet diesen Fehler, wenn sich ein Benutzer anmeldet:
login[14202]: NULL passphrase; aborting
Bei einer Google-Suche wird dieser Fehler nur in der Quelle von pam_ecryptfs.so angezeigt. Er wird ausgelöst, wenn das empfangene PAM_AUTHTOK NULL ist:
rc = pam_get_item(pamh, PAM_AUTHTOK, (const void **)&passphrase);
[...]
if (passphrase == NULL) {
[...]
syslog(LOG_ERR, "NULL passphrase; aborting\n");
[...]
}
Daher wird zumindest pam_ecryptfs.so aufgerufen (d. h. es wird nicht übersprungen, weil SSSD vorhanden ist).Warum wird jedoch eine NULL-Passphrase erhalten?
UPDATE 2:
Nachdem ich nun mehr über PAM erfahren habe, habe ich den Beitrag mit einer Kopie meinergemeinsame AuthentifizierungDatei, da diese beim Login verwendet wird (nichtgemeinsames Passwort)
Antwort1
Es stellte sich heraus, dass die Antwort in der Dokumentation stand! Ich musste nur zuerst herausfinden, wo das Problem lag, und dann zurückgehen und jedes Element des Setups überprüfen:
http://manpages.ubuntu.com/manpages/natty/man8/pam_sss.8.html
Durch Hinzufügen der Option „Weiterleitungspass" an pam_sss.so weist das SSSD-Modul an, die eingegebene Passphrase auf den Stapel zu legen, damit andere Module (z. B. pam_ecryptfs.so) die Informationen verwenden können.
Meine Datei /etc/pam.d/common-auth mit aktiviertem ecryptfs und SSSD sieht also folgendermaßen aus:
auth [success=3 default=ignore] pam_sss.so forward_pass
auth [success=2 default=ignore] pam_unix.so nullok_secure try_first_pass
auth [success=1 default=ignore] pam_winbind.so krb5_auth krb5_ccache_type=FILE cached_login try_first_pass
auth requisite pam_deny.so
auth required pam_permit.so
auth optional pam_ecryptfs.so unwrap
Notiz:Das Wort „debug“ am Ende der Zeile pam_ecryptfs.so hat auch einiges kaputt gemacht!
Ich habe heute definitiv viel über PAM, ecryptfs und Gnome-Keyring gelernt! Ich hoffe, das hilft den Leuten in Zukunft – und vielleicht reiche ich sogar eine Funktionsanforderung ein, um es als Standardeinstellung hinzuzufügen.