Nachdem ich schon eine ganze Weile mit encfs unter openSUSE arbeite, wollte ich probieren, ob es nicht möglich ist, das komplette Home-Verzeichnis mit encfs zu verschlüsseln und automatisch bei der Anmeldung zu mounten.
Theoretisch sollte das möglich sein – und tatsächlich mit pam-encfs geht das auch wunderbar.
Da ich ein ordentlicher Mensch bin
… habe ich auch gleich ein RPM auf den openSUSE BuildService gestellt, so dass auch andere in den Genuss von pam_encfs kommen.
Das RPM ist unter home:gerritbeine auf den BuildService zu finden.
Drei Dinge sind bei der Verwendung zu beachten:
1. PAM-Integration
Am besten lässt sich pam_encfs unter openSUSE über die Datei /etc/pam.d/common-auth-pc integrieren. Normalerweise enthält diese Datei nur die beiden Module pam_env und pam_unix2.
Genau dazwischen schaltet man nun pam_encfs, so dass die Datei wie folgt ausschaut:
auth required pam_env.so
auth sufficient pam_encfs.so
auth required pam_unix2.so
2. Fuse-Konfiguration
Damit pam_encfs mit XDM & Co. verwendet werden kann, muss man in die Datei /etc/fuse.conf die Zeile user_allow_other eintragen.
3. Konfiguration von pam_encfs
Die Konfiguration von pam_encfs liegt unter /etc/security/pam_encfs.conf und ist recht gut dokumentiert.
Allerdings habe ich festgestellt, dass die Standard-Konfiguration nicht immer funktioniert.
Daher sollte statt jener lieber folgende verwendet werden:
#Username Source Target Encfs Fuse
- /home/enc --idle=1 allow_root
Dabei gehe ich davon aus, dass das verschlüsselte Verzeichnis unter /home/enc/
Eine Minute nachdem sich der User abgemeldet hat, wird das Verzeichnis wieder unmountet. Die Fuse-Option allow_root ist notwendig für XDM & Co.
Jetzt kann man sein Home-Verzeichnis verschlüssel und in Zukunft wird es automatisch via encfs gemountet.
Aber bitte: Backups nicht vergessen! Und falls was schiefläuft: Ich bin nicht schuld!