Linux: Systemd will Home-Verzeichnisse portabel machen
Systemd-Entwickler Lennart Poettering hat Pläne präsentiert, Home-Verzeichnisse künftig über einen speziellen Systemdienst portabel zu machen und zu verschlüsseln. Nutzer sollen das Verzeichnis etwa auf einem USB-Stick dabei haben können.

"Ich bin Lennart Poettering und heute nehme ich Eure Home-Verzeichnisse weg", scherzte der Systemd-Entwickler zu Beginn seines Vortrags (PDF) auf der diesjährigen Linux-Userspace-Konferenz All Systems Go, wohl wissend um seine kontroverse Rolle in der Linux-Community. Das konkrete Ziel dieser etwas vagen Ankündigung ist es, das Home-Verzeichnis nicht nur besser via Verschlüsselung zu schützen, sondern es auch portabel zu machen. Er wolle sein Home-Verzeichnis auf einem USB-Stick mitnehmen, an einen anderen Rechner mit einem Linux stecken und es dort nutzen können.
Der neu geschaffene Dienst Systemd-Homed soll dabei nicht wirklich traditionelle Home-Verzeichnisse abschaffen, sondern portable und verschlüsselte Verzeichnisse als Option ergänzen. Der Dienst zielt speziell auf Laptops und den Unternehmenseinsatz. Sämtliche Metadaten zu den Nutzern sollen dann tatsächlich im Home-Verzeichnis liegen. Externe Abhängigkeiten im restlichen Dateisystem soll es nicht mehr geben.
Für die Home-Verzeichnisse bietet systemd-homed mehrere Backends an. Als Ziele kommen normale Verzeichnisse, Btrfs-Subvolumes oder auch Cifs-Mounts in Frage. In diesem Fall liegen die User Records unverschlüsselt und im JSON-Format als ~/.identity-Dateien vor. Sie sind signiert und normale Nutzer dürfen sie nicht ändern. Auf dem Host existieren eigene User Records, die der Host dann mit den User Records der Home-Partition abgleicht. Ist die Signatur auf dem Host nicht bekannt, mountet dieser das Home-Image aus Sicherheitsgründen nicht. Systemadmins dürfen die Signatur allerdings manuell ergänzen.
Verschlüsseltes Home-Verzeichnis
Was Lennart Poettering und seine Mitstreiter aber eigentlich umtreibt, ist die Tatsache, dass privilegierte Dienste wie der Apache-Server auf gewöhnlichen Linux-Systemen problemlos auf private Daten im Home-Verzeichnis zugreifen können. Daher soll systemd-homed auch das Verschlüsseln von Partitionen ermöglichen. Neben FS-Crypt soll auch LUKS2 zum Einsatz kommen.
Die Systemd-Macher wollen das verschlüsselte Home-Abbild dabei als Loopback-Device einhängen. Canonicals Snap-Paketformat nutze diese Technologie bereits erfolgreich und ohne großen Overhead, erklärte Poettering dem Linux-Magazin im Gespräch. Der verschlüsselte User Record soll im LUKS2-Header stecken. Das erlaube es dem Kernel, das Home-Image vor dem Einhängen zu validieren und dieses gegebenenfalls abzulehnen.
Zugleich wolle er das Home über LUKS2 verschlüsseln, sobald der Rechner in den Suspend-to-RAM-Modus geht. Das Nutzerpasswort soll bei verschlüsselten Home-Verzeichnissen zugleich zum Entschlüsseln dienen. Der Code sei laut Lennart Poettering bereits zum großen Teil vorhanden, er findet sich in seinem Github-Zweig von Systemd.
Schwierige Probleme zu lösen
Um den Plan in die Tat umzusetzen, waren allerdings einige Probleme zu lösen, denn das Home und die dazugehörigen Konfigurationsdateien sind historisch gewachsen. So unterscheiden sich die User-IDs von Linux-System zu Linux-System und sind dann auch an einen Benutzernamen gebunden. Zwar vergibt systemd-homed recht einzigartige UIDs für die Home-Partitionen, allerdings sind diese nicht einzigartig genug. Das ist laut Poettering eine Anforderung des Kernel. Sind UIDs auf dem Host doppelt vorhanden, vergibt systemd-homed eine neue UID und führt rekursiv den Befehl chown aus.
Auch die Authentifizierung sei veraltet: Weil sich /etc/passwd nicht erweitern lasse, seien für andere Zwecke Hilfsdatenbanken entstanden, etwa für SSH-Schlüssel, Samba und PAM. Um portabel zu sein, müsse das UID-Assignment des Home-Services lokal stattfinden, wenn der Nutzer sein Home-Verzeichnis einhängt, und auf jedem System, was Poettering als "schwieriges Problem" bezeichnete. SSH lasse sich dann zum Beispiel erst nutzen, wenn der User sich gegenüber dem System identifiziert habe. Die SSH-Schlüssel lassen sich laut Spezifikation ebenfalls in den User Records unterbringen.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
- ohne Werbung
- mit ausgeschaltetem Javascript
- mit RSS-Volltext-Feed
Was heißt hier feature? Jeder Entwickler, der was von sich hält, arbeitet...
Ich meine, ein Udev Hook der sync.sh ausführt, wäre ja zu simpel...
https://en.wikipedia.org/wiki/Feature_creep
Frag doch Artoo von Artix Linux (Arch ohne Systemd). Oder Guck mal ins Forum dazu. Oder...