Moin zusammen,
ich bin neu im Forum und gerade eben bei OpenSuse angekommen. Linux im Allgemeinen betreibe ich schon seit einigen Jahren, insofern ist eine gewisse Erfahrung vorhanden.
Ich würde zu dem Thema gerne etwas schreiben, da ich mich in den vergangenen Wochen/Monaten ausgiebig mit Verschlüsselung unter Linux im Allgemeinen beschäftigt habe. Und es sieht schlechter aus als man denken mag. Aktuell ist eigentlich nur LUKS2 + Argon2ID als wirklich sicher zu bezeichnen. Das können schon mal viele Distros per Installer gar nicht bereitstellen. Hier gibt es das Problem, das GRUB aktuell nicht in der Lage ist solch eine Partition zu entsperren. Insofern behelfen sich einiges Distros mit einer kleinen unverschlüsselten BOOT-Partition, über die dann die LUKS Partition entsperrt wird. Übrigens zu erkennen an dem grafischen Entsperr-Bildschirm (z.B. Fedora oder Ubuntu). Alternativ kann man sich eine gepatchte GIT-Variante von GRUB besorgen, die solch eine LUKS Partition entsperren kann, dafür allerdings mangels Optimierung sehr lange benötigt (ca. 30sec). Zudem eher Bastel-Lösung.
Vor dem oben verlinkten systemd-homed kann ich aus persönlicher Erfahrung nur warnen. In meinen Augen ist es noch nicht ausgereift und steht meines Wissen unter LEAP gar nicht offiziell zur Verfügung. Ich habe systemd-homed auf zwei anderen Distros jeweils ca. 2 Wochen betrieben und endete beide Male in einem nicht mehr zu öffnenden LUKS Container, sodass ich auf meine Daten im Home nicht mehr zugreifen konnte. Auf Recherche & Versuche der Reparatur habe ich verzichtet, da die Lösung für mich schon raus war. Das muss einfach zuverlässig laufen.
Welche Möglichkeiten gibt es denn aktuell überhaupt?
Kurzer Überblick (ggf. unvollständig):
- Komplette Partition verschlüsseln mit LUKS -> Unkomfortabel, da 2x Kennwort erforderlich & Problematik wie oben erläutert
- Systemd-homed verwenden -> nach meiner Erfahrung noch unzuverlässig - siehe Erläuterung oben
- Einen LUKS Container erzeugen und per LOOP Device nach der Anmeldung als Home einhängen -> Es gibt dazu einige HowTo's, halte ich aber eher für eine Bastellösung (Funktion ähnlich wie systemd-homed)
- Ecryptfs verwenden und das Home Verzeichnis per PAM.MOUNT nach der GUI-Anmeldung automatisch entsperren und einhängen -> ecryptfs ist EOL, wird nicht mehr aktiv entwickelt und gilt als veraltet
- Gocryptfs verwenden und ebenfalls per PAM.MOUNT nach der Anmeldung automatisch einhängen -> Nur 1x anmelden, zudem wird Gocryptfs aktiv entwickelt und gilt als ziemlich sicher.
Ich nutze aktuell die Lösung mit Gocryptfs in Verbindung mit Tumbleweed und es funktioniert bisher sehr zuverlässig. Sollte mit Leap ebenfalls funktionieren. Problem könnte hierbei sein, dass ich kein HowTo für OpenSuse gefunden habe. Man muss also vorhandene Anleitungen etwas "umdenken" auf Suse. Bei Interesse würde ich ein HowTo erstellen und hier im Forum zur Verfügung stellen.
Diese Lösung funktioniert zudem auch einwandfrei in Verbindung mit Snapper und mit dem BTRFS Layout, das OpenSuse bereitstellt um Snapshots erstellen und z.B. booten zu können. Übrigens einer der Gründe, warum ich zu OpenSuse gewechselt bin. Richtig klasse gemacht.
EDIT:
- Durch die Tatsache, das LUKS in den Kernel integriert ist und Gocryptfs per FUSE läuft, ergeben sich leichte Nachteile in der Schreib/Lesegeschwindigkeit.
- per Gocryptfs eingehänge Home Verzeichnisse könne nach dem Abmelden meist nicht wieder ausgehängt werden, da Prozesse (Audio) noch zugreifen. Die Daten bleiben also lesbar.
Gruß,
Max