Systemd-homed-beschreibung
Zur Navigation springen
Zur Suche springen
Was ist systemd-homed?
- systemd-homed ist ein Systemdienst, der verwendet werden kann, um Home-Bereiche zu erstellen, zu entfernen, zu ändern oder zu inspizieren.
- Dabei kann es sich um Verzeichnisse und Netzwerk-Mounts und reale oder Loopback-Blockgeräte mit einem Dateisystem, optional verschlüsselt, handeln.
- Die meisten Funktionen von systemd-homed sind über den Befehl homectl zugänglich.
- Jedes von systemd-homed.service verwaltete Home-Verzeichnis synthetisiert einen lokalen Benutzer und eine lokale Gruppe.
- Diese werden dem System unter Verwendung der User/Group Record Lookup API über Varlink zur Verfügung gestellt und können daher mit userdbctl durchsucht werden.
KEY MANAGEMENT
- Benutzerdatensätze werden mit einem öffentlichen/privaten Schlüsselpaar kryptografisch signiert.
- Damit sich ein Benutzer lokal anmelden kann, muss der öffentliche Schlüssel installiert werden, der mit der Signatur seines Benutzerdatensatzes übereinstimmt.
- Damit ein Benutzerdatensatz lokal geändert werden kann, muss der zur Signatur passende private Schlüssel ebenfalls lokal installiert werden.
- Die Schlüssel werden im Verzeichnis /var/lib/systemd/home/ gespeichert:
Der private Schlüssel
- Der private Schlüssel des öffentlichen/privaten Schlüsselpaars, das für lokale Datensätze verwendet wird.
- Derzeit kann nur ein einziger solcher Schlüssel installiert werden.
/var/lib/systemd/home/local.private
Der öffentliche Schlüssel
- Der öffentliche Schlüssel des öffentlichen/privaten Schlüsselpaars, das für lokale Datensätze verwendet wird.
- Derzeit kann nur ein einziger solcher Schlüssel installiert werden.
/var/lib/systemd/home/local.public
Zusätzliche öffentliche Schlüssel
- Alle Benutzer, deren Benutzerdatensätze mit einem dieser Schlüssel signiert sind, dürfen sich lokal anmelden.
- Auf diese Weise kann eine beliebige Anzahl von Schlüsseln installiert werden.
/var/lib/systemd/home/*.public
Allgemein
- Alle oben aufgeführten Schlüsseldateien sind im PEM-Format.
- Um ein Home-Verzeichnis von einem Host "foobar" auf einen anderen Host "quux" zu migrieren,
- Reicht es daher aus, /var/lib/systemd/home/local.public vom Host "foobar" nach "quux" zu kopieren,
- evtl. anrufen die Datei auf dem Ziel /var/lib/systemd/home/foobar.public, die den Ursprung des Schlüssels widerspiegelt.
- Wenn der Benutzerdatensatz auf "quux" änderbar sein soll, muss das Paar /var/lib/systemd/home/local.public und /var/lib/systemd/home/local.private von "foobar" nach "quux" kopiert werden , und dort unter den identischen Pfaden platziert, da derzeit nur ein einziger privater Schlüssel pro Host unterstützt wird.
- Beachten Sie natürlich, dass letzteres bedeutet, dass Benutzerdatensätze, die vor dem Einkopieren des Schlüsselpaars erstellt/signiert wurden, ihre Gültigkeit verlieren.