SYSTEMD.IMAGE-POLICY(7) systemd.image-policy SYSTEMD.IMAGE-POLICY(7)

systemd.image-policy - Plattenabbilder-Analyserichtlinie

In Systemd kann immer, wenn ein Plattenabbild (DDI) aktiviert wird, das die Spezifikation für auffindbare Partitionen[1] implementiert, eine Richtlinie festgelegt werden, die festlegt, welche Partitionen eingehängt werden und welche Art von kryptographischer Schutz benötigt wird. Eine solche Plattenabbild-Analyserichtlinie ist eine Zeichenkette, die durch Doppelpunkt (»:«) getrennte Regeln pro Partitionstyp enthält. Die einzelnen Regeln bestehen aus einer Partitionskennzeichnung, einem Gleichheitszeichen (»=«) und einem oder mehreren Schaltern, die pro Partition gesetzt werden können. Falls pro Partition mehrere Schalter festgelegt werden, werden diese durch ein Pluszeichen (»+«) getrennt.

Die derzeit definierten Partitionskennzeichnungen sind: root, usr, home, srv, esp, xbootldr, swap, root-verity, root-verity-sig, usr-verity, usr-verity-sig, tmp, var. Diese Kennzeichnungen passen auf die entsprechenden Partitionstypen in der Spezifikation der auffindbaren Partitionen, sind aber unabhängig bezüglich der CPU-Architektur. Falls die Partitionskennzeichnung leer gelassen wird, definiert sie die Richtlinie default für Partitionen, die in der Spezifikation der auffindbaren Partitionen definiert sind und für die keine Richtlinienschalter explizit in der Richtlinienzeichenkette aufgeführt sind.

Die folgenden Partitionsrichtlinienschalter sind definiert, die die Existenz/Abwesenheit, die Verwendung und das Schutzniveau von Partitionen bestimmen:

unprotected für Partitionen, die existieren und verwandt werden, aber ohne kryptographisches Schutzniveau vorkommen müssen; ihnen fehlt sowohl die Verity-Authentifizierung als auch die LUKS-Verschlüsselung.
verity für Partitionen, die existieren und verwandt werden müssen, mit Verity-Authentifizierung. (Beachten Sie: Falls ein DDI-Abbild eine Datenpartition zusammen mit einer Verity-Partition und einer zugehörigen Signatur-Partition enthält und nur der Schalter verity (und nicht signed) gesetzt ist, dann wird das Abbild mit Verity eingerichtet, aber die Signaturdaten werden nicht verwandt. Oder in anderen Worten: Jedes DDI mit einer Reihe von Partitionen, die für signature und implizit für verity geeignet sind, und tatsächlich auch für unprotected).
signed für Partitionen, die existieren und verwandt werden müssen, mit Verity-Authentifizierung, die von einer PKCS#7-Signatur des Verity-Wurzel-Hashes begleitet wird.
encrypted für Partitionen, die existieren und verwandt werden müssen und die mit LUKS verschlüsselt sind.
unused für Partitionen, die existieren müssen, aber nicht verwandt werden dürfen.
absent für Partitionen, die im Abbild nicht existieren dürfen.

Durch Setzen einer Kombination der obigen Schalter können Alternativen erklärt werden. Die Kombination »unused+absent« bedeutet beispielsweise: Die Partition darf existieren (dann darf sie aber nicht benutzt werden) oder kann abwesend sein. Die Kombination »unprotected+verity+signed+encrypted+unused+absent« kann über die besondere Abkürzung »open« festgelegt werden und zeigt an, dass die Partition existieren oder abwesend sein darf, aber falls sie existiert, wird sie unabhängig von dem Schutzniveau verwandt.

Und die besondere Regel: Falls keine der obigen Schalter für eine aufgelistete Partitionskennzeichnung gesetzt ist, ist die Standardrichtlinie open impliziert, d.h. wird keine dieser oben dargestellten Schalter gesetzt werden effektiv alle oben aufgeführten Schalter gesetzt.

Die folgenden Partitionsrichtlinienschalter sind definiert, die den Zustand konkreter GPT-Partitionsschalter bestimmen:

read-only-off, read-only-on um zu verlangen, dass bei den Partitionen der Partitions-Schreibschutzschalter aus oder an ist.
growfs-off, growfs-on um zu verlangen, dass bei den Partitionen der Partitions-Wachstumsschalter aus oder an ist.

Wenn für eine Partition sowohl read-only-off als auch read-only-on gesetzt sind, dann wird der Zustand des Schreibschutzschalters für die Partition nicht durch die Richtlinie bestimmt. Wird keiner der Schalter gesetzt ist dies äquivalent zum Setzen von beiden, d.h. Setzen keiner dieser Schalter bedeutet effektiv das Setzen beider. Eine ähnliche Logik gilt für growfs-off/growfs-on.

Falls Partitionen nicht innerhalb einer Abbild-Richtlinien-Zeichenkette aufgeführt sind, dann werden die Standard-Richtlinienschalter angewandt (konfigurierbar über eine leere Partitionskennzeichnung, siehe oben). Falls keine Standard-Richtlinien-Schalter in der Richtlinienzeichenkette konfiguriert sind, wird sie als »absent+unused« impliziert, außer für die Verity-Partition und ihre Signatur-Partitionen, wo die Richtlinie automatisch vom minimalen Schutzniveau der Daten-Partition, die sie schützt und dies in deren Richtlinie kodiert ist, abgeleitet wird.

Die besondere Abbild-Richtlinienzeichenkette »*« ist kurz für »alles verwenden«, d.h. sie ist äquivalent zu:

=verity+signed+encrypted+unprotected+unused+absent

Die besondere Abbild-Richtlinienzeichenkette »-« ist kurz für »nichts verwenden«, d.h. sie ist äquivalent zu:

=unused+absent

Die besondere Abbild-Richtlinienzeichenkette »~« ist kurz für »alles muss abwesend sein«, d.h. sie ist äquivalent zu:

=absent

Die meisten Systemd-Komponenten, die den Betrieb mit Plattenabbildern unterstützen, unterstützen auch die Befehlszeilenoption --image-policy=, um die zu verwendende Abbildrichtlinie festzulegen. Dabei ist die Vorgabe eine recht offene Richtlinie (typischerweise die oben beschriebene Richtlinie »*«) unter der Annahme, dass das Vertrauen in Plattenabbilder etabliert wird, bevor die Abbilder an das entsprechende Programm übergeben werden.

Für das Hauptbetriebssystemabbild selbst ist systemd-gpt-auto-generator(8) für die Verarbeitung der GPT-Partitionstabelle verantwortlich. Es verwendet dabei die enthaltenen, auffindbaren Partitionen. Es akzeptiert eine Abbildrichtlinie über die Kernelbefehlszeilenoption systemd.image-policy=.

Beachten Sie, dass Plattenabbildrichtlinien nicht vorgeben, wie die Komponenten die Plattenabbilder einhängen und verwenden – sie geben nur vor, welche Teile vermieden werden sollen und welches Schutzniveau und -Arrangement benötigt wird, während sie sie einhängen. Beispielsweise kümmert sich systemd-sysext(8) nur um die Bäume /usr/ und /opt/ innerhalb eines Plattenabbildes und ignoriert in allen Fällen sämtliche /home/-Partitionen (und ähnliche), die im Abbild enthalten sein könnten, unabhängig davon, ob die konfigurierte Abbildrichtlinie den Zugriff darauf erlauben würde oder nicht. In gleicher Weise wird systemd-nspawn(1) keinerlei erkannte Auslagerungsgeräte verwenden, unabhängig davon, ob die Richtlinie es erlauben würde oder nicht.

Verwenden Sie den Befehl image-policy des Werkzeugs systemd-analyze(8), um Abbildrichtlinienzeichenketten zu untersuchen und zu bestimmen, was eine bestimmte Richtlinienzeichenkette für eine bestimmte Partition bedeutet.

Die folgende Abbildrichtlinienzeichenkette bestimmt, dass nur eine schreibgeschützte Verity-aktivierte usr/-Partition existieren darf, sowie verschlüsselte Wurzel- und Auslagerungspartitionen. Alle anderen Partitionen müssen ignoriert werden:

usr=verity+read-only-on:root=encrypted:swap=encrypted

Die folgende Abbildrichtlinienzeichenkette bestimmt, dass ein verschlüsseltes, schreibbares Wurzeldateisystem und optional /srv/-Dateisystem, dass bei Existenz verschlüsselt sein muss, existieren dürfen und keine Auslagerungspartition existieren darf:

root=encrypted+read-only-off:srv=encrypted+absent:swap=absent

Die folgende Abbildrichtlinienzeichenkette bestimmt, dass eine einzelne, möglicherweise verschlüsselte Wurzelpartion existiert und Auslagerungspartitionen ignoriert werden und alle anderen Paritionen verwandt werden, falls sie (möglicherweise verschlüsselt) verfügbar sind.

root=unprotected+encrypted:swap=absent+unused:=unprotected+encrypted+absent

systemd(1), systemd-dissect(1), systemd-gpt-auto-generator(8), systemd-sysext(8), systemd-analyze(8)

1.
Spezifikation für auffindbare Partitionen

ÜBERSETZUNG

Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann <debian@helgefjell.de> erstellt.

Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.

Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer.

systemd 255