Wem eine Vollverschlüsselung zu viel des Guten ist, der kann auch lediglich sein $HOME Verzeichnis verschlüsseln. Ich beschreibe es hier einmal für Arch Linux, sollte aber generell für alle Linux Distributionen gelten. Als Vorteil sehe ich beispielsweise, dass wir über SSH unseren Rechner nach einem Reboot erreichen können, es gibt keine Passwortabfrage beim Booten.
Punkt 1: eCryptFS Pakete installieren
1 |
pacman -S keyutils ecryptfs-utils pam_mount |
Punkt 2: Gruppe anlegen
1 |
groupadd ecryptfs |
Punkt 3: Benutzer der Gruppe hinzufügen
Nun fügen wir unseren Benutzer der neu angelegten Gruppe hinzu.
1 |
usermod -aG ecryptfs BENUTZER |
Punkt 4: Modul laden
Das Modul wird später automatisch geladen, aber nun laden wir es einmal manuell.
1 |
modprobe ecryptfs |
Punkt 5: PAM Konfiguration vornehmen
Zuerst editieren wir die Datei /etc/pam.d/login, die hervorgehobenen Zeilen müssen an der korrekten Stelle einfügt werden.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
#%PAM-1.0 auth required pam_securetty.so auth requisite pam_nologin.so auth required pam_unix.so nullok auth optional pam_ecryptfs.so unwrap auth required pam_tally.so onerr=succeed file=/var/log/faillog # use this to lockout accounts for 10 minutes after 3 failed attempts #auth required pam_tally.so deny=2 unlock_time=600 onerr=succeed file=/var/log/faillog account required pam_access.so account required pam_time.so account required pam_unix.so #password required pam_cracklib.so difok=2 minlen=8 dcredit=2 ocredit=2 retry=3 password optional pam_ecryptfs.so #password required pam_unix.so md5 shadow use_authtok session required pam_unix.so session optional pam_ecryptfs.so unwrap session required pam_env.so session required pam_motd.so session required pam_limits.so session optional pam_mail.so dir=/var/spool/mail standard session optional pam_lastlog.so session optional pam_loginuid.so -session optional pam_ck_connector.so nox11 |
Für GDM bearbeiten wir /etc/pam.d/gdm-password, andere Display Manager bitte ähnlich behandeln.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
#%PAM-1.0 auth requisite pam_nologin.so auth required pam_env.so auth requisite pam_unix.so nullok auth optional pam_ecryptfs.so unwrap auth optional pam_gnome_keyring.so auth sufficient pam_succeed_if.so uid >= 1000 quiet auth required pam_deny.so account required pam_unix.so password required pam_unix.so password optional pam_ecryptfs.so session required pam_loginuid.so -session optional pam_systemd.so session optional pam_keyinit.so force revoke session required pam_limits.so session required pam_unix.so session optional pam_ecryptfs.so unwrap session optional pam_gnome_keyring.so auto_start |
Damit wir unser $HOME Verzeichnis auch über SSH entschlüsseln können, fügen wir die drei Zeilen ebenfalls in der Datei /etc/pam.d/sshd ein.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
#%PAM-1.0 #auth required pam_securetty.so #Disable remote root auth required pam_unix.so auth optional pam_ecryptfs.so unwrap auth required pam_env.so account required pam_nologin.so account required pam_unix.so account required pam_time.so password required pam_unix.so password optional pam_ecryptfs.so session required pam_unix_session.so session optional pam_ecryptfs.so unwrap session required pam_limits.so -session optional pam_ck_connector.so nox11 |
Punkt 6: Dein $HOME Verzeichnis verschlüsseln
Mit einem Befehl kann der komplette $HOME Inhalt verschlüsselt werden, ohne das Daten verloren gehen.
Bitte beachte nach der Migration die Bildschirmanweisung!
1 |
ecryptfs-migrate-home -u BENUTZER |
Punkt 7: Login prüfen und altes $HOME Verzeichnis löschen
Sobald der Login und die damit verbundene Entschlüsselung deines $HOME Verzeichnis funktioniert, kann der Backup Ordner /home/BENUTZER.XXXXX gelöscht werden.
Nun habt ihr ein verschlüsseltes Heimatverzeichnis wie es auch unter Ubuntu üblich ist.
Der Vorteil dieser Verschlüsselung ist ganz klar die Mischung normaler $HOME Ordner mit verschlüsselten und nach einem Logout sind deine Daten sicher.
Falls der Swap Speicher verschlüsselt werden soll, schaut euch ecryptfs-setup-swap an.
-Dominion
1