SYSTEMD-PCRPHASE.SERVICE(8) systemd-pcrphase.service BEZEICHNUNG systemd-pcrphase.service, systemd-pcrphase-sysinit.service, systemd-pcrphase-initrd.service, systemd-pcrmachine.service, systemd-pcrfs-root.service, systemd-pcrfs@.service, systemd-pcrextend - Systemstartphase in TPM2 PCR 11 einmessen, Maschinenkennung und Dateisystemidentitat in PCR 15 UBERSICHT systemd-pcrphase.service systemd-pcrphase-sysinit.service systemd-pcrphase-initrd.service systemd-pcrmachine.service systemd-pcrfs-root.service systemd-pcrfs@.service /usr/lib/systemd/systemd-pcrextend [ZEICHENKETTE] BESCHREIBUNG systemd-pcrphase.service, systemd-pcrphase-sysinit.service und systemd-pcrphase-initrd.service sind Systemdienste, die bestimmte Zeichenketten in TPM2-PCR 11 zu bestimmten Meilensteinen wahrend des Systemstartprozesses einmessen. systemd-pcrmachine.service ist ein Systemdienst, der die Maschinenkennung (siehe machine-id(5)) in PCR 15 einmisst. systemd-pcrfs-root.service und systemd-pcrfs@.service sind Dienste, die Dateisystem-Identitatsinformationen (z.B. Einhangepunkt, Dateisystemtyp, Kennzeichnung und UUID, Partitionskennzeichnung und UUID) in PCR 14 einmessen. systemd-pcrfs-root.service macht dies fur das Wurzeldateisystem, systemd-pcrfs@.service ist eine Vorlagen-Unit, die stattdessen das von seiner Instanzkennzeichner angezeigte Dateisystem einmisst. Diese Dienste benotigen, dass systemd-stub(7) in einem vereinigten Kernelabbild (UKI) verwandt wird. Sie fuhren keine Aktion aus, wenn der Rumpf nicht zum Aufruf des Kernels verwandt wurde. Der Rumpf wird sicherstellen, dass der aufgerufene Kernel und die zugehorigen Ressourcen des Lieferanten in PCR 11 eingemessen werden, bevor ihm die Steuerung ubergeben wird; sobald der Anwendungsraum aufgerufen wird, werden diese Dienste TMP2 PCR 11 mit bestimmten wortliche Zeichenketten erweitern und damit Phasen des Systemstartprozesses andeuten. Wahrend des regularen Systemstartprozesses wird PCR 11 mit den nachfolgenden Zeichenketten erweitert. 1. >>enter-initrd<< - fruh, wenn die Initrd sich initialisiert, bevor die Systemerweiterungsabbilder fur die Initrd aktiviert werden. Sie agiert als Barriere zwischen dem Zeitpunkt der Kernelinitialisierung und dem Start der Initrd-Aktionen und der Aktivierung von Systemerweiterungsabbildern, d.h. von Code, der ausserhalb des UKI ausgeliefert wird. (Diese Erweiterung passiert, wenn der Dienst systemd-pcrphase-initrd.service(8) startet.) 2. >>leave-initrd<< - wenn die Initrd gerade dabei ist, in das Dateisystem des Rechners uberzugehen. Sie agiert als Barriere zwischen dem Initrd-Code und dem Code des Rechners. (Diese Erweiterung passiert, wenn der Dienst systemd-pcrphase-initrd.service(8) gestoppt wird.) 3. >>sysinit<< - wenn die grundlegende Initialisierung abgeschlossen ist (dazu gehort, dass lokale Dateisysteme eingehangt wurden) und das System anfangt, regulare Dateisystemdienste zu starten. (Diese Erweiterung passiert, wenn der Dienst systemd-pcrphase-sysinit.service(8) gestartet wird.) 4. >>ready<< - wahrend des spaten Hochfahrens, nachdem ferne Dateisystem bereits aktiviert wurden (d.h. nach remote-fs.target), aber bevor Benutzer das Anmelden erlaubt wird (d.h. vor systemd-user-sessions.service). Sie agiert als Barriere zwischen dem Zeitpunkt, zu dem nicht privilegierten Benutzer das Anmelden verwehrt wird und zu dem Zeitpunkt, wo das moglich ist. (Diese Erweiterung passiert, wenn der Dienst systemd-pcrphase.service gestartet wird.) 5. >>shutdown<< - beim Beginn des System-Herunterfahrens. Sie agiert als Barriere zwischen dem Zeitpunkt, zu dem das System voll aktiv ist und zu dem, wo es mit dem Herunterfahren beginnt. (Diese Erweiterung passiert, wenn der Dienst systemd-pcrphase.service gestoppt ist.) 6. >>final<< - beim Ende des System-Herunterfahrens. Sie agiert als Barriere zwischen dem Zeitpunkt, zu dem der Diensteverwalter noch lauft und zu dem Zeitpunkt, zu dem es in die abschliessende Systemherunterfahrphase ubergeht, bei dem der Diensteverwalter nicht mehr verfugbar ist. (Diese Erweiterung passiert, wenn der Dienst systemd-pcrphase-sysinit.service(8) gestoppt ist.) Wahrend der regularen/normalen Nutzung(sdauer) eines Systems wird PCR 11 mit den Zeichenketten >>enter-initrd<<, >>leave-initrd<<, >>sysinit<<, >>ready<<, >>shutdown<< und >>final<< erweitert. Bestimmte Phasen des Systemstartprozesses konnen uber eine Reihe von eingemessenen Zeichenketten (getrennt durch Doppelpunkte) referenziert werden (den >>Phasenpfad<<). Der Phasenpfad fur die regulare System-Laufzeitumgebung ist beispielsweise >>enter-initrd:leave-initrd:sysinit:ready<<, wahrend die fur die Initrd nur >>enter-initrd<< ist. Der Phasenpfad fur die Systemstartphase vor der Initrd ist die leere Zeichenkette; da das schwer weiterzugeben ist, kann ein einzelner Doppelpunkt (>>:<<) stattdessen verwandt werden. Beachten Sie, dass die vorgenannten sechs Zeichenketten nur die Vorgabezeichenketten sind und individuelle Systeme andere Zeichenketten zu anderen Zeitpunkten einmessen konnten, und daher andere und granularere Systemstartphasen implementieren konnten, um Richtlinien daran zu binden. Durch Binden von Richtlinien von TPM2-Objekten an bestimmte Phasenpfade wird es moglich, sie auf bestimmte Phasen des Systemstartprozesses zu beschranken. Damit wird es beispielsweise unmoglich, auf den Verschlusselungsschlussel des Wurzeldateisystems zuzugreifen, nachdem das System von der Initrd auf das Dateisystem des Systems gewechselt hat. Verwenden Sie systemd-measure(1) (mit dem Schalter --phase=), um die erwarteten PCR-11-Werte fur bestimmte Systemstartphasen vorzuberechnen. systemd-pcrfs-root.service und systemd-pcrfs@.service werden automatisch durch systemd-gpt-auto-generator(8) fur die Wurzel- und /var/-Dateisysteme in die anfangliche Transaktion hereingezogen. systemd-fstab-generator(8) macht dies fur alle Einhangepunkte, bei denen die Einhangeoption x-systemd.pcrfs in /etc/fstab gesetzt ist. OPTIONEN Das Programm /usr/lib/systemd/system-pcrextend kann auch von der Befehlszeile aufgerufen werden. Dort erwartet es das Wort, das in PCR 11 erweitert werden soll, sowie die folgenden Schalter: --bank= Akzeptiert die PCR-Banke, in die das angegeben Wort hinein erweitert werden soll. Falls nicht angegeben, wird das Werkzeug automatisch alle aktivierten PCR-Banke ermitteln und das Wort in alle von ihnen einmessen. Hinzugefugt in Version 252. --pcr= Akzeptiert den Index des zu erweiternden PCR. Falls --machine-id oder --file-system= angegeben sind, ist die Vorgabe 15, andernfalls ist die Vorgabe 11. Hinzugefugt in Version 255. --tpm2-device=PFAD Steuert das zu verwendende TPM2-Gerat. Erwartet einen Gerateknotenpfad, der sich auf einen TPM2-Chip bezieht (z.B. /dev/tpmrm0). Alternativ kann der besondere Wert >>auto<< angegeben werden, um den Gerateknoten eines geeigneten TPM2-Gerates (von dem es genau einen geben darf) automatisch zu bestimmen. Der besondere Wert >>list<< kann verwandt werden, um alle geeigneten, derzeit ermittelten TPM2-Gerate aufzuzahlen. Hinzugefugt in Version 252. --graceful Falls keine Unterstutzung fur TPM2-Firmware, -Kernel-Subsystem, -Kerneltreiber oder -Gerate gefunden wird, wird mit Exit-Status 0 beendet (d.h. Erfolg angezeigt). Falls dies nicht angegeben ist, dann wird jeder Versuch, ohne ein TPM2-Gerat zu messen, zu einem Fehlschlag des Aufrufs fuhren. Hinzugefugt in Version 253. --machine-id Statt das auf der Befehlszeile angegebene Wort in PCR 11 einzumessen, wird die Maschinenkennung des Rechners in PCR 15 eingemessen. Hinzugefugt in Version 253. --file-system= Statt das auf der Befehlszeile angegebene Wort in PCR 11 einzumessen, wird die Maschinenidentitatsinformation des angegebenen Dateisystems in PCR 15 eingemessen. Dieser Parameter muss der Pfad zum aufgebauten Einhangepunkt des zu messenden Dateisystems sein. Hinzugefugt in Version 253. -h, --help Zeigt einen kurzen Hilfetext an und beendet das Programm. --version Zeigt eine kurze Versionszeichenkette an und beendet das Programm. DATEIEN /run/log/systemd/tpm2-measure.log Messungen werden in ein Ereignisprotokoll protokolliert, das in /run/log/systemd/tpm2-measure.log verwaltet wird. Es enthalt eine JSON-SEQ[1]-Serie von Objekten, die der allgemeinen Struktur der Gemeinsamen TCG-Ereignisprotokollformat- (CEL-JSON-)[2]-Ereignisobjekte folgt. Es fehlen ihm aber die Felder >>recnum<<. Eine LOCK_EX-BSD-Dateisperre (flock(2)) auf der Protokolldatei wird wahrend der Durchfuhrung der Messung und der Aktualisierung der Datei erlangt. Daher sollten Anwendungen, die planen, eine konsistente Angabe aus dem TPM mit dem zugehorigen Schnappschuss des Ereignisprotokolls zu erlangen, eine LOCK_SH-Sperre erlangen, wahrend sie dies tun. Hinzugefugt in Version 252. SIEHE AUCH systemd(1), systemd-stub(7), systemd-measure(1), systemd-gpt-auto-generator(8), systemd-fstab-generator(8), Von Systemd durchgefuhrte TPM2-PCR-Messungen[3] ANMERKUNGEN 1. JSON-SEQ https://www.rfc-editor.org/rfc/rfc7464.html 2. Gemeinsames TCG-Ereignisprotokollformat (CEL-JSON) https://trustedcomputinggroup.org/resource/canonical-event-log-format/ 3. Von Systemd durchgefuhrte TPM2-PCR-Messungen https://systemd.io/TPM2_PCR_MEASUREMENTS UBERSETZUNG Die deutsche Ubersetzung dieser Handbuchseite wurde von Helge Kreutzmann erstellt. Diese Ubersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezuglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG ubernommen. Wenn Sie Fehler in der Ubersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Ubersetzer . systemd 255 SYSTEMD-PCRPHASE.SERVICE(8)