Provided by: manpages-de_4.27.0-1_all 

BEZEICHNUNG
systemd-creds - Dienstezugangsberechtigungen auflisten, anzeigen, ver- und entschlüsseln
ÜBERSICHT
systemd-creds [OPTIONEN…] BEFEHL [ARG…]
BESCHREIBUNG
systemd-creds ist ein Werkzeug zum Auflisten, Anzeigen, Ver- und Entschlüsseln von
Unit-Zugangsberechtigungen. Zugangsberechtigungen sind binäre oder textuelle Objekte beschränkter Größe,
die an Unit-Prozesse übergeben werden können. Sie werden primär zur Übergabe kryptographischer Schlüssel
(sowohl öffentliche als auch private) oder Zertifikate, Benutzerkonteninformationen oder
Identitätsinformationen vom Rechner an Dienste verwandt.
Zugangsberechtigungen werden in Unit-Dateien über die Einstellungen ImportCredential=, LoadCredential=,
SetCredential=, LoadCredentialEncrypted= und SetCredentialEncrypted= konfiguriert, siehe systemd.exec(5)
für Details.
Für weitere Informationen siehe die Dokumentation System- und Dienste-Zugangsberechtigungen[1].
BEFEHLE
Die folgenden Befehle werden verstanden:
list
Zeigt eine Liste von Zugangsberechtigungen an, die im aktuellen Ausführungskontext übergeben wurden.
Dieser Befehl zeigt die Dateien in dem durch die Umgebungsvariable $CREDENTIALS_DIRECTORY
referenzierten Verzeichnis an und ist dazu gedacht, innerhalb des Dienstekontextes ausgeführt zu
werden.
Zusammen mit jedem Zugangsberechtigungsnamen wird die Größe und der Sicherheitszustand angezeigt.
Letzterer ist entweder »secure« (falls die Zugangsberechtigung sich in nicht-auslagerungsfähigem
Speicher befindet, d.h. »ramfs«), »weak« (falls sie sich in anderen Arten von Speicher befindet) oder
»insecure« (falls sie einen Zugriffsmodus hat, der nicht 0400 ist, d.h. von irgendjemand anders außer
dem Eigentümer lesbar ist).
Hinzugefügt in Version 250.
cat Zugangsberechtigung…
Zeigt den Inhalt der angegebenen Zugangsberechtigung, die im aktuellen Ausführungskontext übergeben
wurde. Akzeptiert die Namen einer oder mehrerer Zugangsberechtigungen, deren Inhalte auf die
Standardausgabe geschrieben werden.
Wird dies mit --json= oder --transcode= kombiniert, dann wird die Ausgabe auf einfache Art vor der
Ausgabe umgewandelt.
Hinzugefügt in Version 250.
setup
Erstellt einen Rechnerverschlüsselungsschlüssel für Zugangsberechtigungen, falls bisher noch keiner
erstellt wurde. Dies stellt sicher, dass die Datei /var/lib/systemd/credential.secret mit einem
zufälligen Geheimnis initialisiert wird, falls sie noch nicht existiert. Dieser geheime Schlüssel
wird zum Ver-/Entschlüsseln von Zugangsberechtigungen mit encrypt oder decrypt verwandt und nur der
Benutzer root hat Zugriff darauf. Beachten Sie, dass normalerweise keine Notwendigkeit besteht,
diesen Befehl explizit aufzurufen, da er implizit aufgerufen wird, wenn encrypt aufgerufen und die
Verschlüsselung der Zugangsberechtigung mit dem Rechnerschlüssel ausgewählt wird.
Hinzugefügt in Version 250.
encrypt Eingabe|- Ausgabe|-
Lädt die angegebene (unverschlüsselte Klartext-)Eingabezugangsberechtigungsdatei, verschlüsselt sie
und schreibt die (verschlüsselte Chiffretext-)Ausgabe in die angegebene
Zielzugangsberechtigungsdatei. Die entstehende Datei kann in der Einstellung LoadCredentialEncrypted=
in Unit-Dateien referenziert werden oder ihr Inhalt direkt in Einstellungen SetCredentialEncrypted=
verwandt werden.
Akzeptiert zwei Dateisystempfade. Der Dateinamenanteil des Ausgabepfades wird als Name in die
verschlüsselte Zugangsberechtigung eingebettet, um sicherzustellen, dass verschlüsselte
Zugangsberechtigungen nicht umbenannt oder für andere Zwecke wiederverwendet werden, ohne dass das
bemerkt wird. Der einzubettende Zugangsberechtigungsname kann mit der Einstellung --name= außer Kraft
gesetzt werden. Die Eingabe- oder Ausgabepfade können als »-« angegeben werden, die
Zugangsberechtigungsdaten werden dann aus der Standardeingabe gelesen bzw. in die Standardausgabe
geschrieben. Falls der Ausgabepfad als »-« angegeben wurde, kann der Zugangsberechtigungsname nicht
aus dem Dateisystempfad abgeleitet werden und sollte daher explizit mit dem Schalter --name=
angegeben werden.
Die Zugangsberechtigungsdaten werden symmetrisch mit einem der folgenden Verschlüsselungsschlüssel
verschlüsselt und authentifiziert:
1. Einem geheimen Schlüssel, der aus dem TPM2-Chip des Systems abgeleitet wurde. Dieser
Verschlüsselungsschlüssel wird nicht auf dem Rechnersystem gespeichert und die Entschlüsselung
ist daher nur mit Zugriff auf den ursprünglichen TPM2-Chip möglich. Oder mit anderen Worten
gesagt, eine auf diese Weise gesicherte Zugangsberechtigung kann nur auf der lokalen Maschine
wieder entschlüsselt werden.
2. Ein in der Datei /var/lib/systemd/credential.secret gespeicherter geheimer Schlüssel, auf den nur
der Benutzer root zugreifen kann. Dieser »Rechner«-Verschlüsselungsschlüssel wird im Dateisystem
des Rechners gespeichert und daher ist die Entschlüsselung mit Zugriff auf das Dateisystem des
Rechners und ausreichenden Privilegien möglich. Der Schlüssel wird bei Bedarf automatisch
erstellt, kann aber auch explizit mit dem oben beschriebenen Befehl setup erstellt werden.
3. Eine Kombination der beiden vorstehenden: ein sowohl vom TPM2-Chip als auch dem
Rechnerdateisystem abgeleiteter Schlüssel. Das bedeutet, dass die Entschlüsselung sowohl Zugriff
auf den ursprünglichen TPM2-Chip als auch die Betriebssysteminstallation benötigt. Dies ist der
Vorgabemodus für Aktionen, falls ein TPM2-Chip verfügbar ist und sich /var/lib/systemd/ auf einem
dauerhaften Medium befindet.
Welcher der drei Schlüssel für Verschlüsselung verwandt werden soll, kann mit dem Schalter
--with-key= konfiguriert werden. Abhängig vom Einsatzfall für die verschlüsselten
Zugangsberechtigungen kann sich der Schlüssel unterscheiden. Für Zugangsberechtigungen, auf die
während der Initrd zugegriffen werden soll, ist die Verschlüsselung mit dem Rechnerschlüssel nicht
geeignet, da von der Initrd typischerweise kein Zugriff auf den Rechnerschlüssel möglich ist. Daher
sollte für solche Zugangsberechtigungen nur der TPM2-Schlüssel verwandt werden.
Verschlüsselte Zugangsberechtigungen sind immer Base64-kodiert.
Verwenden Sie decrypt (siehe unten), um die Verschlüsselungsaktion rückgängig zu machen und die
entschlüsselte Klartextzugangsberechtigung aus der verschlüsselten Chiffretext-Zugangsberechtigung zu
erhalten.
Die Zugangsberechtigungsdaten werden mittels AES256-GCM verschlüsselt, d.h. sowohl Vertraulichkeit
als auch Integrität wird geschützt, mittels eines SHA256-Hashes als Schlüssel für einen oder beide
der oben beschriebenen Schlüssel.
Hinzugefügt in Version 250.
decrypt Eingabe|- [Ausgabe|-]
Macht den Effekt der Aktion encrypt rückgängig; lädt die angegebene (verschlüsselte
Chriffre-)-Eingabedatei, entschlüsselt und authentifiziert sie und schreibt die (entschlüsselte
Klartext-)Ausgabe in die angegebene Ziel-Zugangsberechtigungsdatei.
Akzeptiert einen oder zwei Dateisystempfade. Der Dateinamenanteil des Eingabepfads wird mit dem in
der verschlüsselten Datei eingebetteten Zugangsberechtigungsnamen verglichen. Falls diese nicht
übereinstimmen, schlägt die Entschlüsselung fehl. Dies erfolgt, um sicherzustellen, dass
verschlüsselte Zugangsberechtigungsdaten nicht für andere Zwecke umgewidmet werden, ohne dass dies
erkannt wird. Der mit dem eingebetteten Zugangsberechtigungsnamen zu vergleichende
Zugangsberechtigungsname kann mit dem Schalter --name= außer Kraft gesetzt werden. Falls der
Eingabepfad als »-« angegeben wurde, wird die verschlüsselte Zugangsberechtigung von der
Standardeingabe gelesen. Falls nur ein Pfad angegeben ist oder der Ausgabepfad als »-« angegeben
wurde, wird die entschlüsselte Zugangsberechtigung auf die Standardausgabe geschrieben. In diesem
Modus kann der eingebettete Name in der Zugangsberechtigung nicht aus dem Pfad abgeleitet werden und
sollte explizit mit --name= angegeben werden.
Entschlüsseln von Zugangsberechtigungen benötigt Zugriff auf den ursprünglichen TPM2-Chipsatz
und/oder den Zugangsberechtigungs-Rechnerschlüssel, siehe oben. Informationen darüber, welche
Schlüssel benötigt werden, sind in den verschlüsselten Zugangsberechtigungsdaten eingebettet und die
Entschlüsselung ist daher vollständig automatisiert.
Hinzugefügt in Version 250.
-h, --help
Zeigt einen kurzen Hilfetext an und beendet das Programm.
--version
Zeigt eine kurze Versionszeichenkette an und beendet das Programm.
OPTIONEN
--system
Agiert auf den Zugangsberechtigungen für das System als Ganzes anstatt denen, die im aktuellen
Ausführungskontext übergeben wurden, wenn dies zusammen mit den Befehlen list und cat angegeben wird.
Dies ist in Container-Umgebungen nützlich, bei denen Zugangsberechtigungen von dem
Container-Verwalter übergeben werden können.
Hinzugefügt in Version 250.
--user
Verschlüsselt ein auf Benutzer (anstatt das System) beschränkte Zugangsberechtigung, wenn dies
zusammen mit den Befehlen encrypt und decrypt verwandt wird. Verwenden Sie --uid=, um den Benutzer
auszuwählen, von dem die Zugangsberechtigung stammt. Solche Zugangsberechtigungen können nur in dem
Kontext des angegebenen Benutzers entschlüsselt werden, außer falls die Privilegien erlangt werden
können. Im Allgemeinen sollte eine Zugangsberechtigung mit dieser Option gesetzt verschlüsselt
werden, wenn die entschlüsselte Zugangsberechtigung in dem benutzerbezogenen Diensteverwalter
verwandt werden soll. Soll die Zugangsberechtigung in dem Systemdiensteverwalter verwandt werden,
dann sollte sie ohne diese Option verschlüsselt werden.
Intern stellt dies sicher, dass die numerische UID und der Benutzername des ausgewählten Benutzers
sowie die machine-id(5) des Systems in den verschlüsselten Schlüssel integriert werden.
Hinzugefügt in Version 256.
--uid=
Legt den Benutzer fest, für den die Zugangsberechtigung verschlüsselt werden soll. Akzeptiert einen
Benutzernamen oder eine numerische UID. Falls gesetzt, impliziert dies --user. Falls auf die
besondere Zeichenkette »self« gesetzt, wird der Benutzer auf den des aufrufenden Prozesses gesetzt.
Falls --user ohne --uid= verwandt wird, dann wird --uid=self impliziert, d.h. die Zugangsberechtigung
wird für den aufrufenden Benutzer verschlüsselt.
Hinzugefügt in Version 256.
--transcode=
Wandelt die Ausgabe für die Anzeige um, wenn dies zusammen mit den Befehlen cat oder decrypt
angegeben wird. Akzeptiert entweder »base64«, »unbase64«, »hex« oder »unhex« als Argument, um die
Zugangsdaten mit Base64 oder einer Reihe von hexadezimalen Werten zu (de)kodieren.
Beachten Sie, dass dies beim Befehl encrypt keine Auswirkung hat, da die verschlüsselten
Zugangsberechtigungen bedingungslos in Base64 kodiert sind.
Hinzugefügt in Version 250.
--newline=
Steuert, ob ein abschließendes Zeilenumbruchszeichen am Ende hinzugefügt wird, falls dies nicht
bereits sowieso der Fall ist, wenn dies zusammen mit den Befehlen cat oder decrypt angegeben wird.
Akzeptiert entweder »auto«, »yes« oder »no«. Der Vorgabemodus »auto« wird der Ausgabe nur ein
einzelnes Zeilenumbruchzeichen anhängen, wenn die Zugangsberechtigungsdaten auf ein TTY geschrieben
werden.
Hinzugefügt in Version 250.
--pretty, -p
Steuert, ob die verschlüsselten Zugangsberechtigungen als Einstellung SetCredentialEncrypted=
angezeigt werden sollen, die dann direkt in eine Unit-Datei kopiert werden kann, wenn dies zusammen
mit dem Befehl encrypt angegeben wird. Hat nur Auswirkungen, wenn es zusammen mit --name= und »-« als
die Augabedatei verwandt wird.
Hinzugefügt in Version 250.
--name=Name
Steuert den Namen der Zugangsberechtigung, der in die verschlüsselten Zugangsberechtigungsdaten
eingebettet werden soll, wenn dies zusammen mit dem Befehl encrypt angegeben wird. Falls nicht
angegeben, wird der Name automatisch aus der Dateinamenkomponente des angegebenen Ausgabepfades
ausgewählt. Falls als leere Zeichenkette angegeben, wird kein Zugangsberechtigungsname in der
verschlüsselten Zugangsberechtigung eingebettet und bei der Entschlüsselung der Zugangsberechtigung
erfolgt keine Überprüfung des Zugangsberechtigungsnamens.
Steuert den Zugangsberechtigungsnamen, der zum Validieren des in der verschlüsselten
Zugangsberechtigung eingebetteten Zugangsberechtigungsnamens verwandt werden soll, wenn dies zusammen
mit dem Befehl decrypt angegeben wird. Falls nicht angegeben, wird der Name automatisch aus der
Dateinamenkomponente des angegebenen Eingabepfades ausgewählt. Falls kein Zugangsberechtigungsname in
der verschlüsselten Zugangsberechtigungsdatei eingebettet ist (d.h. beim Verschlüsseln wurde --name=
mit einer leeren Zeichenkette verwandt), hat der angegebene Name keine Wirkung, da keine Validierung
des Zugangsberechtigungsnamens erfolgt.
Einbetten des Zugangsberechtigungsnamens in der verschlüsselten Zugangsberechtigung erfolgt, um gegen
die Wiederverwendung von Zugangsberechtigungen für andere als die ursprünglich geplanten Zwecke zu
schützen, wobei angenommen wird, dass der Name der Zugangsberechtigung sorgfältig gewählt wird, um
seinen geplanten Zweck zu kodieren.
Hinzugefügt in Version 250.
--timestamp=Zeitstempel
Steuert den in die verschlüsselte Zugangsberechtigung einzubettenden Zeitstempel, wenn dies zusammen
mit dem Befehl encrypt angegeben wird. Standardmäßig die aktuelle Zeit. Akzeptiert einen Zeitstempel
in dem in systemd.time(7) beschriebenen Format.
Steuert den Zeitstempel, der zum Validieren des »not-after«-Zeitstempels verwandt werden soll, der
mit --not-after= während der Verschlüsselung konfiguriert wurde, wenn dies zusammen mit dem Befehl
decrypt angegeben wird. Falls nicht angegeben, ist die Vorgabe die aktuelle Systemzeit.
Hinzugefügt in Version 250.
--not-after=Zeitstempel
Steuert die Zeit, ab der die Zugangsberechtigung nicht mehr verwandt werden soll, wenn dies zusammen
mit dem Befehl encrypt angegeben wird. Dies bettet den angegebenen Zeitstempel in die verschlüsselten
Zugangsberechtigungen ein. Während der Entschlüsselung wird der Zeitstempel gegen die aktuelle
Systemzeit geprüft und falls der Zeitstempel in der Vergangenheit liegt, wird die Entschlüsselung
fehlschlagen. Standardmäßig wird kein solcher Zeitstempel gesetzt. Akzeptiert einen Zeitstempel in
dem in systemd.time(7) beschriebenen Format.
Hinzugefügt in Version 250.
--with-key=, -H, -T
Steuert den zu verwendenden Verschlüsselungs-/Signaturschlüssel, wenn dies zusammen mit dem Befehl
encrypt angegeben wird. Akzeptiert entweder »host«, »tpm2«, »host+tpm2«, »null«, »auto« oder
»auto-initrd«. Siehe oben für Details über die drei Schlüsseltypen. Falls auf »auto« gesetzt (die
Vorgabe), wird der TPM2-Schlüssel verwandt, falls ein TPM2-Gerät gefunden und die Ausführung nicht in
einem Container ist. Der Rechnerschlüssel wird verwandt, falls /var/lib/systemd/ auf einem
dauerhaften Medium ist. Dies bedeutet, dass auf typischen Systemen die Verschlüsselung standardmäßig
sowohl an den TPM2-Chip als auch die Betriebssysteminstallation gebunden ist und beide verfügbar sein
müssen, um die Zugangsberechtigung wieder zu entschlüsseln. Falls »auto« ausgewählt ist und weder ein
TPM2 verfügbar ist (oder die Ausführung in einem Container stattfindet) noch /var/lib/systemd/ auf
dauerhaftem Medium vorhanden ist, wird die Verschlüsselung fehlschlagen. Falls auf »null« gesetzt
wird ein Schlüssel der festen Länge Null verwandt (und daher wird in diesem Modus keine
Vertraulichkeit oder Authentizität bereitgestellt!). Diese Logik ist für Systeme nützlich, die keinen
TPM2-Chip haben, aber auf den Zugangsberechtigungen erzeugt werden sollen. Beachten Sie, dass die
Entschlüsselung solcher Zugangsberechtigungen auf Systemen, die einen TPM2-Chip haben und bei denen
UEFI-SecureBoot aktiviert ist, abgelehnt wird (dies erfolgt, da solche verrigelten Systeme nicht in
das Laden einer auf dieser Weise erzeugten Zugangsberechtigung, der die Authentifizierungsinformation
fehlt, verführt werden können). Falls auf »auto-initrd« gesetzt, wird ein TPM2-Schlüssel verwandt,
falls er gefunden wird. Andernfalls wird ein Schlüssel der festen Länge Null verwandt, äquivalent zum
Modus »null«. Diese Option ist insbesondere nützlich, um Zugangsberechtigungsdateien zu erstellen,
die gegen einen TPM2-Chip verschlüsselt/authentifiziert sind, wenn dieser verfügbar ist, aber dennoch
auf Systemen funktioniert, denen die Unterstützung für einen solchen fehlt.
Der Schalter -H ist eine Abkürzung für --with-key=host. Entsprechend ist -T eine Abkürzung für
--with-key=tpm2.
Bei der Verschlüsselung von Zugangsberechtigungen, die in der Initrd verwandt werden sollen, bei der
/var/lib/systemd/ typischerweise nicht verfügbar ist, sollte sichergestellt werden, dass der Modus
--with-key=auto-initrd verwandt wird, um die Anbindung an das Rechnergeheimnis auszuschalten.
Dieser Schalter hat beim Befehl decrypt keine Auswirkung, da Informationen über den für die
Entschlüsselung zu verwendenden Schlüssel bereits in der verschlüsselten Zugangsberechtigung
enthalten sind.
Hinzugefügt in Version 250.
--tpm2-device=PFAD
Steuert das zu verwendende TPM2-Gerät. Erwartet einen Geräteknotenpfad, der sich auf einen TPM2-Chip
bezieht (z.B. /dev/tpmrm0). Alternativ kann der besondere Wert »auto« angegeben werden, um den
Geräteknoten eines geeigneten TPM2-Gerätes automatisch zu bestimmen (von denen es genau einen geben
darf). Der besondere Wert »list« kann zum Aufzählen aller derzeit ermittelten geeigneten TPM2-Geräte
verwandt werden.
Hinzugefügt in Version 250.
--tpm2-pcrs=PCR[+PCR…]
Konfiguriert die TPM2-PCRs (Plattformkonfigurationsregister), in die der Verschlüsselungsschlüssel
gebunden werden soll. Akzeptiert eine durch »+« getrennte Liste von numerischen PCR-Indices im
Bereich 0…23. Falls nicht benutzt, ist die Vorgabe nur PCR 7. Falls eine leere Liste angegeben ist,
wird der Verschlüsselungsschlüssel an überhaupt kein PCR gebunden. Für Details über die verfügbaren
PCRs siehe die Dokumentation des Schalters mit dem gleichen Namen in systemd-cryptenroll(1).
Hinzugefügt in Version 250.
--tpm2-public-key=PFAD, --tpm2-public-key-pcrs=PCR[+PCR…]
Konfiguriert zur Verwendung mit dem Befehl encrypt eine TPM2-signierte PCR-Richtlinie, an die die
Verschlüsselung gebunden werden soll. Die Option --tpm2-public-key= akzeptiert einen Pfad zu einem
PEM-kodierten öffentlichen RSA-Schlüssel, an den die Verschlüsselung gebunden werden soll. Falls dies
nicht explizit angegeben ist, aber die Datei tpm2-pcr-public-key.pem in einer der (in dieser
Reihenfolge durchsuchten) Verzeichnisse /etc/systemd/, /run/systemd/, /usr/lib/systemd/ existiert,
wird sie automatisch verwandt. Die Option --tpm2-public-key-pcrs= akzeptiert eine Liste von
TPM2-PCR-Indices, an die angebunden werden soll (gleiche Syntax wie die oben beschriebene
--tpm2-pcrs=). Falls nicht angegeben ist die Vorgabe 11 (d.h. dies bindet die Richtlinie an ein
vereinigtes Kernelabbild, für das eine PCR-Signatur bereitgestellt werden kann).
Beachten Sie den Unterschied zwischen --tpm2-pcrs= und --tpm2-public-key-pcrs=: Ersterer bindet die
Entschlüsselung an die aktuellen, angegebenen PCR-Werte; Letzteres bindet die Entschlüsselung an eine
Gruppe von PCR-Werten, für die eine Signatur durch den angegebenen öffentlichen Schlüssel
bereitgestellt werden kann. Leztere ist daher in Szenarien nützlicher, bei denen
Software-Aktualisierungen möglich sein sollen, ohne Zugriff auf alle vorher verschlüsselten
Geheimnisse zu verlieren.
Hinzugefügt in Version 252.
--tpm2-signature=PFAD
Akzeptiert einen Pfad zu einer TPM2-PCR-Signaturdatei, wie sie vom Werkzeug systemd-measure(1)
erstellt wurde und die es dem Befehl decrypt erlaubt, die Zugangsberechtigungen zu entschlüsseln, die
an bestimmte signierte PCR-Werte gebunden sind. Falls dies nicht explizit angegeben ist und die
Entschlüsselung einer Zugangsberechtigung mit einer signierten PCR-Richtlinie versucht wird, wird
nach einer geeigneten Signaturdatei tpm2-pcr-signature.json in /etc/systemd/, /run/systemd/,
/usr/lib/systemd/ (in dieser Reihenfolge) gesucht und diese verwandt.
Hinzugefügt in Version 252.
--allow-null
Erlaubt das Entschlüsseln von Zugangsberechtigungen, die einen leeren Schlüssel verwenden.
Hinzugefügt in Version 256.
--quiet, -q
Unterdrückt zusätzliche Ausgaben.
Hinzugefügt in Version 251.
--no-pager
Leitet die Ausgabe nicht an ein Textanzeigeprogramm weiter.
--no-legend
Gibt die Legende nicht aus, d.h. die Spaltenköpfe und die Fußzeile mit Hinweisen.
--json=MODUS
Zeigt die Ausgabe als JSON formatiert. Erwartet entweder »short« (für die kürzest mögliche Ausgabe
ohne unnötigen Leerraum oder Zeilenumbrüche), »pretty« (für eine schönere Version der gleichen
Ausgabe, mit Einzügen und Zeilenumbrüchen) oder »off« (um die JSON-Ausgabe auszuschalten, was die
Vorgabe ist).
EXIT-STATUS
Bei Erfolg wird 0 zurückgeliefert.
BEISPIELE
Beispiel 1. Verschlüsselt ein Passwort zur Verwendung als Zugangsberechtigung
Die folgende Befehlszeile verschlüsselt das angegebene Passwort »hunter2« und schreibt das Ergebnis in
eine Datei password.cred.
# echo -n hunter2 | systemd-creds encrypt - password.cred
Dies entschlüsselt die Datei password.cred wieder und legt damit das eigentliche Passwort offen:
# systemd-creds decrypt password.cred
hunter2
Beispiel 2. Verschlüsselt ein Passwort und nimmt es in eine Unit-Datei auf
Die folgende Befehlszeile bittet den Benutzer um ein Passwort und erstellt daraus eine
SetCredentialEncrypted=-Zeile für eine Zugangsberechtigung namens »mysql-password«, geeignet für die
Aufnahme in eine Unit-Datei.
# systemd-ask-password -n | systemd-creds encrypt --name=mysql-password -p - -
🔐 Password: ****
SetCredentialEncrypted=mysql-password: \
k6iUCUh0RJCQyvL8k8q1UyAAAAABAAAADAAAABAAAAASfFsBoPLIm/dlDoGAAAAAAAAAA \
NAAAAAgAAAAAH4AILIOZ3w6rTzYsBy9G7liaCAd4i+Kpvs8mAgArzwuKxd0ABDjgSeO5k \
mKQc58zM94ZffyRmuNeX1lVHE+9e2YD87KfRFNoDLS7F3YmCb347gCiSk2an9egZ7Y0Xs \
700Kr6heqQswQEemNEc62k9RJnEl2q7SbcEYguegnPQUATgAIAAsAAAASACA/B90W7E+6 \
yAR9NgiIJvxr9bpElztwzB5lUJAxtMBHIgAQACCaSV9DradOZz4EvO/LSaRyRSq2Hj0ym \
gVJk/dVzE8Uxj8H3RbsT7rIBH02CIgm/Gv1ukSXO3DMHmVQkDG0wEciyageTfrVEer8z5 \
9cUQfM5ynSaV2UjeUWEHuz4fwDsXGLB9eELXLztzUU9nsAyLvs3ZRR+eEK/A==
Die erstellte Zeile kann 1:1 in eine Unit-Datei eingefügt werden und wird sicherstellen, dass das
erlangte Passwort in der Zugangsberechtigungsdatei $CREDENTIALS_DIRECTORY/mysql-password für den
gestarteten Dienst zur Verfügung gestellt wird.
Unter Verwendung der Unit-Datei-Ergänzungslogik kann dies zur sicheren Übergabe einer
Passwort-Zugangsberechtigung an eine Unit verwandt werden. Eine ähnliche, umfassende Gruppe an Befehlen
zum Einfügen eines Passworts in einen Dienst xyz.service:
# mkdir -p /etc/systemd/system/xyz.service.d
# systemd-ask-password -n | ( echo "[Service]" && systemd-creds encrypt --name=MySQL-Passwort -p - - ) >/etc/systemd/system/xyz.service.d/50-password.conf
# systemctl daemon-reload
# systemctl restart xyz.service
SIEHE AUCH
systemd(1), systemd.exec(5), systemd-measure(1)
ANMERKUNGEN
1. System- und Dienste-Zugangsberechtigungen
https://systemd.io/CREDENTIALS
Ü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: debian-l10n-german@lists.debian.org.
systemd 257.6 SYSTEMD-CREDS(1)