CRYPTTAB(5) | crypttab | CRYPTTAB(5) |
BEZEICHNUNG
crypttab - Konfiguration für verschlüsselte Blockgeräte
ÜBERSICHT
/etc/crypttab
BESCHREIBUNG
Die Datei /etc/crypttab beschreibt verschlüsselte Blockgeräte, die während der frühen Systemstartphase eingerichtet werden.
Leere Zeilen und Zeilen, die mit dem Zeichen »#« beginnen, werden ignoriert. Jede andere verbleibende Zeile beschreibt ein verschlüsseltes Blockgerät. Felder werden durch Leeraum begrenzt.
Jede Zeile hat die Form
Datenträgername verschlüsseltes_Gerät Schlüsseldatei Optionen
Die ersten zwei Felder sind verpflichtend, die verbleibenden zwei optional.
Die Einrichtung eines verschlüsselten Blockgerätes mittels dieser Datei kann in vier Verschlüsselungsmodi erfolgen: LUKS, TrueCrypt, BitLocker und einfach. Siehe cryptsetup(8) für weitere Informationen über jeden Modus. Wenn kein Modus in dem Optionsfeld festgelegt wurde und das Blockgerät eine LUKS-Signatur enthält, dann wird es als LUKS-Gerät geöffnet. Andernfalls wird angenommen, dass es in rohem DM-Crypt-Format (einfacher Modus) ist.
Die vier Felder von /etc/crypttab sind wie folgt definiert:
Falls sich der festgelegte Schlüsseldateipfad auf ein AF_UNIX-Datenstrom-Socket im Dateisystem bezieht, wird der Schlüssel beschafft, indem eine Verbindung zu dem Socket aufgebaut und er aus der Verbindung gelesen wird. Dies ermöglicht der Implementierung eines Dienstes, die Schlüsselinformationen dynamisch bereitzustellen, zu dem Zeitpunkt, zu dem sie benötigt werden. Details sind weiter unten beschrieben.
SCHLÜSSELBESCHAFFUNG
Es werden sechs verschiedene Mechanismen zur Beschaffung des Entschlüsselungs-Schlüssels oder der Passphrase zum Entsperren des verschlüsselten Datenträgers unterstützt. Konkret:
Für die letzteren fünf Mechanismen ist die Quelle für das Schlüsselmaterial, das zum Entsperren des Datenträgers verwandt wird, primär in dem dritten Feld jeder /etc/crypttab-Zeile kodiert, kann aber auch in /etc/cryptsetup-keys.d/ und /run/cryptsetup-keys.d/ (siehe oben) oder in den LUKS2-JSON-Token-Datenkopf (im Falle der letzteren drei) konfiguriert werden. Verwenden Sie das Werkzeug systemd-cryptenroll(1), um PKCS#11-, FIDO2- und TPM2-Geräte in LUKS2-Datenträgern zu registrieren.
UNTERSTÜTZTE OPTIONEN
Die folgenden Optionen können im vierten Feld jeder Zeile verwandt werden:
cipher=
Hinzugefügt in Version 186.
discard
Hinzugefügt in Version 207.
hash=
Hinzugefügt in Version 186.
header=
Optional kann dem Pfad ein »:« und eine /etc/fstab-Gerätespezifikation folgen (z.B. beginnend mit »UUID=« oder ähnlich). In diesem Fall ist der Pfad relativ zu der Dateisystemwurzel des Geräts. Das Gerät wird automatisch nur für die LUKS-Geräteaktivierungsdauer eingehängt.
Hinzugefügt in Version 219.
keyfile-offset=
Hinzugefügt in Version 187.
keyfile-size=
Hinzugefügt in Version 188.
keyfile-erase
Hinzugefügt in Version 246.
key-slot=
Hinzugefügt in Version 209.
keyfile-timeout=
Hinzugefügt in Version 243.
luks
Hinzugefügt in Version 186.
bitlk
Hinzugefügt in Version 246.
_netdev
Tipp: Falls dieses Gerät für einen in fstab(5) festgelegten Einhängepunkt verwandt wird, sollte die Option _netdev auch für den Einhängepunkt verwandt werden. Andernfalls könnte eine Abhängigkeitsschleife erstellt werden, bei der der Einhängepunkt durch local-fs.target hereingezogen, während der Dienst zur Konfiguration des Netzwerkes normalerweise nach dem Einhängen des lokalen Dateisystems gestartet wird.
Hinzugefügt in Version 235.
noauto
Hinzugefügt in Version 186.
nofail
Hinzugefügt in Version 186.
offset=
Hinzugefügt in Version 220.
plain
Hinzugefügt in Version 186.
read-only, readonly
Hinzugefügt in Version 186.
same-cpu-crypt
Dies benötigt Kernel 4.0 oder neuer.
Hinzugefügt in Version 242.
submit-from-crypt-cpus
Dies benötigt Kernel 4.0 oder neuer.
Hinzugefügt in Version 242.
no-read-workqueue
Dies benötigt Kernel 5.9 oder neuer.
Hinzugefügt in Version 248.
no-write-workqueue
Dies benötigt Kernel 5.9 oder neuer.
Hinzugefügt in Version 248.
skip=
Diese Option ist nur für einfache Geräte relevant.
Hinzugefügt in Version 220.
size=
Hinzugefügt in Version 186.
sector-size=
Hinzugefügt in Version 240.
swap
WARNUNG: Durch Verwendung der Option swap wird der Inhalt der benannten Partition während jedes Systemstarts zerstört. Stellen Sie daher sicher, dass das zugrundeliegende Blockgerät korrekt angegeben ist.
Hinzugefügt in Version 186.
tcrypt
Beim Einsatz dieses Modus wird die Passphrase aus der im dritten Feld übergebenen Datei gelesen. Es wird nur die erste Zeile dieser Datei ohne das Zeilenvorschubszeichen gelesen.
Beachten Sie, dass das TrueCrypt-Format sowohl Passphrasen als auch Schlüsseldateien zur Ableitung eines Passworts für den Datenträger verwendet. Daher müssen die Passphrase und alle Schlüsseldateien angegeben werden. Verwenden Sie tcrypt-keyfile=, um den absoluten Pfad zu allen Schlüsseldateien anzugeben. Bei der Verwendung einer leeren Passphrase in Kombination mit einer oder mehrerer Schlüsseldateien verwenden Sie »/dev/null« als Passwortdatei im dritten Feld.
Hinzugefügt in Version 206.
tcrypt-hidden
Dies bildet den versteckten Datenträger, das sich innerhalb des im zweiten Feld angegebenen Datenträgers befindet, ab. Beachten Sie, dass es keinen Schutz für den versteckten Datenträger gibt, falls stattdessen der äußere Datenträger eingehängt wird. Siehe cryptsetup(8) für weitere Informationen über diese Beschränkung.
Hinzugefügt in Version 206.
tcrypt-keyfile=
Lesen Sie beim Einsatz des TrueCrypt-Verschlüsselungsmodus den Eintrag zu tcrypt für das Verhalten der Passphrase und Schlüsseldateien.
Hinzugefügt in Version 206.
tcrypt-system
Hinzugefügt in Version 206.
tcrypt-veracrypt
Hinzugefügt in Version 232.
veracrypt-pim=
Beachten Sie, dass VeraCrypt einen minimalen erlaubten PIM-Wert erzwingt, der von der Passwortstärke und dem für die Schlüsselableitung verwandten Hash-Algorithmus abhängt. Allerdings prüft veracrypt-pim= dies nicht gegen diese Schranken. Siehe die Veracrypt-Personal-Iteration-Multiplier[1]-Dokumentation für weitere Informationen.
Hinzugefügt in Version 254.
timeout=
Hinzugefügt in Version 186.
tmp=
WARNUNG: Durch Verwendung der Option tmp wird der Inhalt der benannten Partition während jedes Systemstarts zerstört. Stellen Sie daher sicher, dass das zugrundeliegende Blockgerät korrekt angegeben ist.
Hinzugefügt in Version 186.
tries=
Hinzugefügt in Version 186.
headless=
Hinzugefügt in Version 249.
verify
Hinzugefügt in Version 186.
password-echo=yes|no|masked
Falls aktiviert, werden die eingegebenen Zeichen 1:1 ausgegeben. Falls deaktiviert, werden die eingegebenen Zeichen in keiner Weise wieder ausgegeben, der Benutzer erhält keine Rückmeldung zu seiner Eingabe. Falls auf »masked« gesetzt, wird ein Sternchen (»*«) für jedes getippte Zeichen ausgegeben. Unabhängig davon, welcher Modus ausgewählt wird, wird die Ausgabe eingegebener Zeichen ausgeschaltet, falls der Benutzer zu irgendeinem Zeitpunkt die Tabulatortaste (»↹«) oder vor der Eingabe anderer Daten die Rückschritttaste (»⌫«) drückt.
Hinzugefügt in Version 249.
pkcs11-uri=
Falls dies als »auto« festgelegt wurde, dann muss der Datenträger vom Typ LUKS2 sein und die PKCS#11-Sicherheits-Token-Metadaten in seinem LUKS2-JSON-Token-Abschnitt tragen. In diesem Modus werden die URI und der verschlüsselte Schlüssel automatisch aus dem LUKS2-JSON-Token-Datenkopf gelesen. Verwenden Sie systemd-cryptenroll(1) als einfaches Werkzeug zum Registrieren von PKCS#11-Sicherheits-Token oder -Smartcards, auf eine Art, die mit »auto« kompatibel ist. In diesem Modus sollte die dritte Spalte der Zeile leer bleiben (das bedeutet, als »-« festgelegt sein).
Die festgelegte URI kann sich entweder direkt auf einen privaten, auf dem Token gespeicherten RSA-Schlüssel oder alternativ nur auf ein Position oder einen Token beziehen. In letzterem Fall wird eine Suche nach einem geeigneten privaten RSA-Schlüssel durchgeführt. Werden in diesem Fall mehrere geeignete Objekte gefunden, wird der Token abgelehnt. Der in der dritten Spalte der Zeile konfigurierte verschlüsselte Schlüssel wird unverändert (d.h. in binärer Form, unverarbeitet) an die RSA-Entschlüsselung weitergegeben. Der daraus entstehende entschlüsselte Schlüssel wird dann Base64-kodiert, bevor er zum Entsperren des LUKS-Datenträgers verwandt wird.
Verwenden Sie systemd-cryptenroll --pkcs11-token-uri=list, um alle geeigneten, derzeit eingesteckten PKCS#11-Sicherheits-Token zusammen mit ihren URIs aufzulisten.
Beachten Sie, dass viele neuere Sicherheits-Token, die auch als PKCS#11-Sicherheits-Token verwandt werden können, typischerweise auch das neuere und einfachere (nachfolgend beschriebene) fido2-device= implementieren, um sie stattdessen mit FIDO2 zu registrieren. Beachten Sie, dass ein mittels PKCS#11 registrierter Token nicht zum Entsperren eines Datenträgers mittels FIDO2 verwandt werden kann, außer er ist auch mittels FIDO2 registriert und umgekehrt.
Hinzugefügt in Version 245.
fido2-device=
Falls dies als »auto« festgelegt wird, wird das FIDO2-Token-Gerät automatisch erkannt, wenn es eingesteckt wird.
FIDO2-Datenträgerentsperrung benötigt einen Client-Kennungs-Hash (CID), der mittels fido2-cid= (siehe unten) konfiguriert wird und einen Schlüssel, der an die HMAC-Funktionalität des Sicherheits-Tokens übergeben werden muss (der in der dritten Spalte der Zeile konfiguriert wird), um zu funktionieren. Falls nicht konfiguriert und der Datenträger vom Typ LUKS2 ist, wird die CID und der Schlüssel stattdessen von den LUKS2-JSON-Token-Metadaten gelesen. Verwenden Sie systemd-cryptenroll(1) als einfaches Werkzeug, um FIDO2-Sicherheits-Token, die zum automatischen Modus kompatibel sind, der nur für LUKS2-Datenträger verfügbar ist, zu konfigurieren.
Verwenden Sie systemd-cryptenroll --fido2-device=list, um alle geeigneten und derzeit eingesteckten FIDO2-Sicherheits-Token zusammen mit ihren Geräteknoten aufzulisten.
Diese Option implementiert den folgenden Mechanismus: der konfigurierte Schlüssel wird mittels der vom FIDO2-Gerät implementierten HMAC-indizierten Hash-Funktion gehasht, indiziert durch einen geheimen Schlüssel, der im Gerät eingebettet ist. Der daraus entstehende Hash-Wert wird Base64-kodiert und zum entsperren des LUKS2-Datenträgers verwandt. Da es nicht möglich sein darf, den geheimen Schlüssel vom Hardware-Token auszulesen, sollte es nicht möglich sein, den gehashten Schlüssel zu ermitteln, wenn der konfigurierte Schlüssel übergeben wird — ohne den Hardware-Token zu besitzen.
Beachten Sie, dass viele Sicherheits-Token, die FIDO2 implementieren, auch PKCS#11 implementieren, was zum Entsperren von Datenträgern mit der oben beschriebenen Option pkcs11-uri= geeignet ist. Typischerweise ist der neuere, einfachere FIDO2-Standard zu bevorzugen.
Hinzugefügt in Version 248.
fido2-cid=
Hinzugefügt in Version 248.
fido2-rp=
Hinzugefügt in Version 248.
tpm2-device=
Verwenden Sie tpm2-pcrs= (siehe unten), um die Menge der TPM2-PCRs, die an die Datenträger-Entsperrung gebunden werden soll, zu konfigurieren. Verwenden Sie systemd-cryptenroll(1) als einfacheres Werkzeug zum Registrieren von TPM2-Sicherheits-Chips bei LUKS2-Datenträgern.
Falls als »auto« festgelegt, wird das TPM2-Gerät automatisch ermittelt. Verwenden Sie systemd-cryptenroll --tpm2-device=list, um alle derzeit verfügbaren geeigneten TPM2-Geräte zusammen mit ihren Geräteknoten aufzulisten.
Diese Option implementiert die folgenden Mechanismen: Beim Registrieren eines TPM2-Gerätes mittels systemd-cryptenroll an einem LUKS2-Datenträger wird auf dem Rechner ein zufälliger Schlüssel zum Entsperren des Datenträgers erstellt und in den TPM2-Chip geladen, wo er mit dem asymmetrischen »primären« Schlüsselpaar, das vom internen »seed«-Schlüssel des TPMs abgeleitet ist, verschlüsselt wird. Es wird sichergestellt, dass weder der Seed-Schlüssel noch der primäre Schlüssel jemals den TPM2-Chips verlassen — der jetzt verschlüsselte zufällige Schlüssel darf dies aber. Er wird in den JSON-Token-Kopfzeilen des LUKS2-Datenträgers gespeichert. Beim Entsperren des verschlüsselten Datenträgers wird auf dem TPM2-Chip das primäre Schlüsselpaar erneut erstellt (was funktioniert, solange der Seed-Schlüssel auf dem TPM-Chip korrekt verwaltet wird). Dieses Schlüsselpaar wird dann zum Entschlüsseln (auf dem TPM2-Chips) des verschlüsselten Schlüssel aus den JSON-Token-Kopfzeilen des LUK2-Datenträgers, der dort beim Registrieren gespeichert wurde, verwandt. Der daraus entstehende entschlüsselte Schlüssel wird dann zum Entschlüsseln des Datenträgers verwandt. Wenn der zufällige Schlüssel verschlüsselt wird, dann werden die aktuellen Werte der ausgewählten PCRs (siehe unten) in der Aktion eingebunden, so dass ein anderer PCR-Status zu einem anderen verschlüsselten Schlüssel führt und der entschlüsselte Schlüssel nur wiederhergestellt werden kann, falls der gleiche PCR-Zustand reproduziert wird.
Hinzugefügt in Version 248.
tpm2-pcrs=
Hinzugefügt in Version 248.
tpm2-pin=
Hinzugefügt in Version 251.
tpm2-signature=
Hinzugefügt in Version 252.
tpm2-pcrlock=
Hinzugefügt in Version 255.
tpm2-measure-pcr=
Hinzugefügt in Version 253.
tpm2-measure-bank=
Hinzugefügt in Version 253.
token-timeout=
Hinzugefügt in Version 250.
try-empty-password=
Hinzugefügt in Version 246.
x-systemd.device-timeout=
Hinzugefügt in Version 216.
x-initrd.attach
Obwohl es nicht notwendig ist, den Einhängeeintrag für das Wurzeldateisystem mit x-initrd.mount zu markieren, wird x-initrd.attach weiterhin für verschlüsselte Blockgeräte empfohlen, die das Wurzeldateisystem enthalten, da Systemd andernfalls versuchen wird, das Gerät während des regulären Herunterfahrens des Systems abzuhängen, während es noch verwandt wird. Mit dieser Option wird das Gerät weiterhin abgehängt, aber später, wenn das Wurzeldateisystem ausgehängt wird.
Alle anderen verschlüsselten Blockgeräte, die in der Initrd eingehängte Dateisysteme enthalten, sollten diese Option verwenden.
Hinzugefügt in Version 245.
In der frühen Systemstartphase und wenn die Konfiguration des Systemverwalters neu geladen wird, wird diese Datei durch systemd-cryptsetup-generator(8) in eine native Systemd-Unit übersetzt.
AF_UNIX-SCHLÜSSELDATEIEN
Falls der Schlüsseldateipfad (wie in der dritten Spalte der /etc/crypttab-Einträge festgelegt, siehe oben) sich auf ein AF_UNIX-Datenstrom-Socket in dem Dateisystem bezieht, wird der Schlüssel erlangt, indem eine Verbindung zu dem Socket aufgebaut und der Schlüssel aus der Verbindung gelesen wird. Die Verbindung erfolgt von einem AF_UNIX-Socket in dem abstrakten Namensraum, siehe unix(7) für Details. Der Quell-Socket-Name wird gemäß folgendem Format ausgewählt:
NUL ZUFALL /cryptsetup/ DATENTRÄGER
Mit anderen Worten: ein Nullbyte (NUL) (wie für abstrakte Namensraum-Sockets benötigt), gefolgt von einer zufälligen Zeichenkette (bestehend nur aus alphanumerischen Zeichen), gefolgt von der wörtlichen Zeichenkette »cryptsetup«, gefolgt von dem Namen des Datenträgers, für den der Schlüssel erlangt werden soll. Zum Beispiel für einen Datenträger »myvol«:
\0d7067f78d9827418/cryptsetup/myvol
Dienste, die auf dem AF_UNIX-Datenstrom-Socket auf Anfragen warten, können den Quell-Socket-Namen mit getpeername(2) abfragen und dieses dazu verwenden, den gesandten Schlüssel zu ermitteln, wodurch ein einzelner, auf Anfragen wartender Socket Schlüssel für eine Reihe von Datenträgern bereitstellen kann. Falls die PKCS#11-Logik verwandt wird (siehe oben), wird der Socket-Quellname auf ähnliche Art ermittelt, außer dass die wörtliche Zeichenkette »cryptsetup-pkcs11« verwandt wird. Ähnlich für FIDO2 (»cryptsetup-fido2«) und TPM2 (»cryptsetup-tpm2«). Es wird eine andere Pfadkomponente verwandt, damit Dienste, die Schlüsselmaterial bereitstellen, wissen, dass der geheime Schlüssel nicht direkt erbeten wurde, sondern stattdessen ein verschlüsselter Schlüssel, der mittels der PKCS#11/FIDO2/TPM2-Logik entschlüsselt wird, um den letztendlichen geheimen Schlüssel zu erlangen.
BEISPIELE
Beispiel 1. /etc/crypttab-Beispiel
Richtet vier verschlüsselte Blockgeräte ein. Eines mittels LUKS für die normale Speicherung, ein anderes für die Verwendung als Auslagerungsgerät und zwei TrueCrypt-Datenträger. Für das vierte Gerät wird die Optionszeichenkette als zwei Optionen interpretiert: »cipher=xchacha12,aes-adiantum-plain64«, »keyfile-timeout=10s«.
luks UUID=2505567a-9e27-4efe-a4d5-15ad146c258b swap /dev/sda7 /dev/urandom swap truecrypt /dev/sda2 /etc/container_password tcrypt hidden /mnt/tc_hidden /dev/null tcrypt-hidden,tcrypt-keyfile=/etc/keyfile external /dev/sda3 keyfile:LABEL=keydev keyfile-timeout=10s,cipher=xchacha12\,aes-adiantum-plain64
Beispiel 2. Yubikey-basierte PKCS#11-Datenträger-Entsperrung
Die PKCS#11-Logik erlaubt das Einbinden jedes kompatiblen Sicherheits-Tokens, der in der Lage ist, RSA-Entschlüsselungsschlüssel für das Entsperren verschlüsselter Datenträger zu speichern. Als Beispiel hier die Einrichtung eines Yubikey-Sicherheits-Tokens für ein LUKS2-Datenträger zu diesem Zweck mittels ykmap(1) aus dem Yubikey-manager-Projekt, um den Token zu initialisieren und systemd-cryptenroll(1), um ihn zu dem LUKS2-Datenträger hinzuzufügen:
# SPDX-License-Identifier: MIT-0 # Alle alten Schlüssel auf dem Yubikey zerstören (Vorsicht!) ykman piv reset # Erstellt ein neues Schlüsselpaar (privat/öffentlich) auf dem Gerät, speichert den # öffentlichen Schlüssel in »pubkey.pem«. ykman piv generate-key -a RSA2048 9d pubkey.pem # Erstellen Sie ein selbstsigniertes Zertifikat aus diesem öffentlichen Schlüssel und speichern Sie es auf dem # Gerät. Das »subject« sollte eine beliebige, vom Benutzer gewählte Zeichenkette sein, um den Token # damit zu identifizieren. ykman piv generate-certificate --subject "Knobelei" 9d pubkey.pem # Wir brauchen den öffentlichen Schlüssel nicht mehr, daher wird er entfernt. Da er nicht sicherheitsrelevant # ist, führen wir einfach ein reguläres »rm« hier aus. rm pubkey.pem # Registriert den frisch initialisierten Sicherheits-Token in dem LUKS2-Datenträger. # Ersetzen Sie /dev/sdXn durch die zu verwendende Partition (z.B. /dev/sda1). sudo systemd-cryptenroll --pkcs11-token-uri=auto /dev/sdXn # Testen: Führen Sie »systemd-cryptsetup« aus, um zu testen, ob alles funktioniert. sudo systemd-cryptsetup attach mytest /dev/sdXn - pkcs11-uri=auto # Falls das funktionierte, fügen Sie die gleiche Zeile für die Zukunft dauerhaft # zu /etc/crypttab hinzu. Der (instabile) Name /dev/sdX sollte nicht verwandt # werden, daher wird ein stabiler Link ermitelt: udevadm info -q -r symlink /dev/sdXn # Fügen Sie jetzt die Zeile mittels des by-uuid-Symlinks zu /etc/crypttab # hinzu: sudo bash -c 'echo "mytest /dev/disk/by-uuid/… - pkcs11-uri=auto" >>/etc/crypttab' # Abhängig von Ihrer Distribution und Verschlüsselungsinstallation, könnte es # notwendig sein, dass Sie Ihre Initramfs manuell neu erstellen müssen, um # einen Yubikey / ein PKCS#11-Token zu verwenden, um während der frühen # Systemstartphase die Partition zu entsperren. # Weitere Informationen unter https://unix.stackexchange.com/a/705809. # Auf Fedora-basierten Systemen: sudo dracut --force # Auf Debian-basierten Systemen: sudo update-initramfs -u
Ein paar Hinweise zu obigem:
Beispiel 3. FIDO2-Datenträger-Entsperrung
Die FIDO2-Logik erlaubt das Verwenden jedes kompatiblen FIDO2-Sicherheits-Tokens, der die Erweiterung »hmac-secret« zum Entsperren eines verschlüsselten Datenträgers implementiert. Als Beispiel hier die Einrichtung eines FIDO2-Sicherheits-Tokens für ein LUKS2-Datenträger mittels systemd-cryptenroll(1) zu diesem Zweck:
# SPDX-License-Identifier: MIT-0 # Registrieren des Sicherheits-Tokens am LUKS2-Datenträger. Ersetzen Sie /dev/sdXn # durch die zu verwendende Partition (z.B. /dev/sda1). sudo systemd-cryptenroll --fido2-device=auto /dev/sdXn # Testen: Führen Sie »systemd-cryptsetup« aus, um zu testen, ob alles funktioniert. sudo systemd-cryptsetup attach mytest /dev/sdXn - fido2-device=auto # Falls das funktionierte, fügen Sie die gleiche Zeile für die Zukunft dauerhaft # zu /etc/crypttab hinzu. Der (instabile) Name /dev/sdX sollte nicht verwandt # werden, daher wird ein stabiler Link ermitelt: udevadm info -q -r symlink /dev/sdXn # Fügen Sie jetzt die Zeile mittels des by-uuid-Symlinks zu /etc/crypttab # hinzu: sudo bash -c 'echo "mytest /dev/disk/by-uuid/… - fido2-device=auto" >>/etc/crypttab' # Abhängig von Ihrer Distribution und Verschlüsselungsinstallation, könnte es # notwendig sein, dass Sie Ihre Initramfs manuell neu erstellen müssen, um # ein FIDO2-Gerät zu verwenden, um während der frühen Systemstartphase die # Partition zu entsperren. # Weitere Informationen unter https://unix.stackexchange.com/a/705809. # Auf Fedora-basierten Systemen: sudo dracut --force # Auf Debian-basierten Systemen: sudo update-initramfs -u
Beispiel 4. TPM2-basierte Datenträger-Entsperrung
Die TPM2-Logik erlaubt die Verwendung jedes durch den Linux-Kernel unterstützten TPM2-Chips zum Entsperren eines verschlüsselten Datenträgers. Es folgt ein Beispiel, wie ein TPM2-Chip für diesen Zweck für ein LUKS2-Datenträger mittels systemd-cryptenroll(1) eingerichtet wird:
# SPDX-License-Identifier: MIT-0 # Registrieren des TPM2-Sicherheits-Chips am LUKS2-Datenträger und Anbindung an nur # PCR 7. Ersetzen Sie /dev/sdXn durch die zu verwendende Partition (z.B. /dev/sda1). sudo systemd-cryptenroll --tpm2-device=auto --tpm2-pcrs=7 /dev/sdXn # Testen: Führen Sie »systemd-cryptsetup« aus, um zu testen, ob alles funktioniert. sudo systemd-cryptsetup attach mytest /dev/sdXn - tpm2-device=auto # Falls das funktionierte, fügen Sie die gleiche Zeile für die Zukunft dauerhaft # zu /etc/crypttab hinzu. Der (instabile) Name /dev/sdX sollte nicht verwandt # werden, daher wird ein stabiler Link ermitelt: udevadm info -q -r symlink /dev/sdXn # Fügen Sie jetzt die Zeile mittels des by-uuid-Symlinks zu /etc/crypttab # hinzu: sudo bash -c 'echo "mytest /dev/disk/by-uuid/… - tpm2-device=auto" >>/etc/crypttab' # Prüfen Sie jetzt, dass die automatische Entsperrung funktioniert: sudo systemd-cryptsetup detach mytest sudo systemctl daemon-reload sudo systemctl start cryptsetup.target systemctl is-active systemd-cryptsetup@mytest.service # Sobald das automatisch entsperrte Geräte vorliegt, kann es verwandt werden. # Normalerweise wird ein Dateisystem erstellt und zu /etc/fstab hinzugefügt: sudo mkfs.ext4 /dev/mapper/mytest # Dies gibt die »Dateisystem-UUID« aus, die als stabiler Name verwandt werden kann: sudo bash -c 'echo "/dev/disk/by-uuid/... /var/mytest ext4 defaults,x-systemd.mkdir 0 2" >>/etc/fstab' # Überprüfen Sie jetzt, dass das Einhängen funktioniert: sudo systemctl daemon-reload sudo systemctl start /var/mytest systemctl status /var/mytest # Abhängig von Ihrer Distribution und Verschlüsselungsinstallation, könnte es # notwendig sein, dass Sie Ihre Initramfs manuell neu erstellen müssen, um # einen TPM2-Sicherheitschip zu verwenden, um während der frühen # Systemstartphase die Partition zu entsperren. # Weitere Informationen unter https://unix.stackexchange.com/a/705809. # Auf Fedora-basierten Systemen: sudo dracut --force # Auf Debian-basierten Systemen: sudo update-initramfs -u
SIEHE AUCH
systemd(1), systemd-cryptsetup@.service(8), systemd-cryptsetup-generator(8), systemd-cryptenroll(1), fstab(5), cryptsetup(8), mkswap(8), mke2fs(8)
ANMERKUNGEN
- 1.
- Veracrypt Personal Iterations Multiplier
- 2.
- RFC7512 PKCS#11 URI
- 3.
- Yubico-PIV-Zertifikatspositionen
Ü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 |