Verwaltung#
Dieses Kapitel beschreibt administrative Aufgaben für Benutzer mit der Rolle Administrator. Bitte lesen Sie das Kapitel Rollen, um mehr über die Rolle zu erfahren.
Wichtig
Bitte lesen Sie unbedingt die Informationen am Anfang von diesem Dokument bevor Sie mit der Arbeit beginnen.
Systemverwaltung#
Informationen zum Gerät#
Die Hersteller- und Produktinformationen für ein NetHSM können wie folgt abgerufen werden.
Beispiel
$ nitropy nethsm --host $NETHSM_HOST info
Host: localhost:8443
Vendor: Nitrokey GmbH
Product: NetHSM
Informationen über den Endpunkt /info finden Sie in der API Dokumentation.
Boot-Modus#
NetHSM kann im Attended Boot-Modus und im Unattended Boot-Modus verwendet werden.
Boot-Modus |
Beschreibung |
---|---|
Besuchtes Boot |
Beim Hochfahren befindet sich der NetHSM in einem _gesperrten_ Zustand. Bei jedem Start muss die Unlock Passphrase eingegeben werden, die zur Entschlüsselung der Benutzerdaten verwendet wird. Aus Sicherheitsgründen wird dieser Modus empfohlen, und er ist der Standardmodus für ein frisch eingerichtetes System. |
Unbeaufsichtigter Start |
Das System startet unbeaufsichtigt, ohne dass die Unlock Passphrase eingegeben werden muss, in einen _Operational_ Zustand. Verwenden Sie diesen Modus, wenn Ihre Verfügbarkeitsanforderungen mit dem Modus Attended Boot nicht erfüllt werden können. |
Warnung
Unabhängig vom Boot-Modus behält die Unlock Passphrase ihre Gültigkeit und wird für die Wiederherstellung von Backups auf anderer Hardware benötigt. Bewahren Sie die Unlock Passphrase jederzeit sicher auf.
Der aktuelle Bootmodus kann wie folgt abgefragt werden.
Beispiel
$ nitropy nethsm --host $NETHSM_HOST get-config --unattended-boot
Configuration for NetHSM localhost:8443:
Unattended boot: off
Informationen über den Endpunkt /config/unattended-boot können in der API-Dokumentation gefunden werden.
Der Bootmodus kann wie folgt geändert werden. Beim nächsten Start verhält sich der NetHSM entsprechend.
Argumente
Argument |
Beschreibung |
---|---|
Status |
Aktivieren oder deaktivieren Sie Unattended Boot. Kann den Wert |
Beispiel
$ nitropy nethsm --host $NETHSM_HOST set-unattended-boot on
Updated the unattended boot configuration for NetHSM localhost:8443
Informationen über den Endpunkt /config/unattended-boot können in der API-Dokumentation gefunden werden.
Staat#
Die NetHSM-Software hat vier Zustände: Unprovisioned, Provisioned, Locked, und Operational.
Staat |
Beschreibung |
---|---|
Unprovisioniert |
NetHSM ohne Konfiguration (Werkseinstellung) |
Bereitgestellt |
NetHSM mit Konfiguration. Der Status Provisioned impliziert entweder den Status Operational oder Locked. |
Betrieblich |
NetHSM mit Konfiguration und bereit zur Ausführung von Befehlen. Der Zustand Betrieblich impliziert den Zustand Bereitgestellt. |
Geschlossen |
NetHSM mit Konfiguration, aber verschlüsselten und unzugänglichen Datenspeichern. Normalerweise besteht der nächste Schritt darin, das System zu entsperren. Der Zustand Locked impliziert den Zustand Provisioned. |
Der aktuelle Zustand des NetHSM kann wie folgt abgefragt werden.
Beispiel
$ nitropy nethsm --host $NETHSM_HOST state
NetHSM localhost:8443 is Unprovisioned
Informationen über den Endpunkt /health/state finden Sie in der API-Dokumentation.
Ein neuer NetHSM hat den Zustand Unprovisioned und geht nach der Provisionierung in den Zustand Operational über. Das Provisioning eines NetHSM wird im Kapitel Provisioning <getting-started#provisioning> beschrieben.
Eine NetHSM im Zustand Operational kann wie folgt wieder gesperrt werden, um sie zu schützen.
Beispiel
$ nitropy nethsm --host $NETHSM_HOST lock
NetHSM localhost:8443 locked
Informationen über den Endpunkt /lock finden Sie in der API-Dokumentation.
Eine NetHSM im Zustand Locked kann wie folgt entsperrt werden. Während sich das NetHSM im Zustand _Locked_ befindet, sind keine weiteren Operationen möglich. Danach befindet sich das NetHSM in einem _Operational_ Zustand.
Beispiel
$ nitropy nethsm --host $NETHSM_HOST unlock
NetHSM localhost:8443 unlocked
Informationen über den Endpunkt /unlock finden Sie in der API Dokumentation.
Passphrase freischalten#
Die Unlock Passphrase wird verwendet, um einen Unlock Key abzuleiten, wenn sich der NetHSM im Locked Status befindet. Die Passphrase wird erstmals bei der Bereitstellung des NetHSM festgelegt.
Warnung
Die Entsperr-Passphrase kann nicht zurückgesetzt werden, ohne den aktuellen Wert zu kennen. Wenn die Entsperr-Passphrase verloren geht, kann sie weder auf einen neuen Wert zurückgesetzt noch das NetHSM entsperrt werden.
Die Unlock Passphrase kann wie folgt eingestellt werden.
Optionale Optionen
Option |
Beschreibung |
---|---|
-n`, ` ` ` ` –new-passphrase TEXT |
Die neue Passphrase zum Entsperren |
-p`, ` ` ` ` –current-passphrase TEXT |
Die aktuelle Passphrase zum Entsperren |
|
Vor dem Ändern der Passphrase nicht nach einer Bestätigung fragen |
Beispiel
$ nitropy nethsm --host $NETHSM_HOST set-unlock-passphrase
New passphrase:
Repeat for confirmation:
Current passphrase:
Warning: The unlock passphrase cannot be reset without knowing the current value. If the unlock passphrase is lost, neither can it be reset to a new value nor can the NetHSM be unlocked.
Do you want to continue? [y/N]: y
Updated the unlock passphrase for NetHSM localhost:8443
Informationen über den Endpunkt /config/unlock-passphrase können in der API-Dokumentation gefunden werden.
TLS-Zertifikat#
Das TLS-Zertifikat wird für die HTTPS-basierte REST-API verwendet und somit auch von nitropy genutzt. Bei der Bereitstellung wird ein selbstsigniertes Zertifikat erstellt. Das Zertifikat kann z.B. durch ein signiertes Zertifikat einer Zertifizierungsstelle (CA) ersetzt werden. In diesem Fall muss ein Certificate Signing Request (CSR) erstellt werden. Nach der Signierung muss das Zertifikat in den NetHSM importiert werden.
Eine Änderung ist nur erforderlich, wenn das Zertifikat ersetzt werden soll. Eine solche Änderung kann darin bestehen, es durch ein signiertes Zertifikat einer Zertifizierungsstelle (CA) zu ersetzen.
Das TLS-Zertifikat kann wie folgt abgerufen werden.
Erforderliche Optionen
Option |
Beschreibung |
---|---|
|
Get the certificate for the NetHSM TLS interface |
Beispiel
$ nitropy nethsm --host $NETHSM_HOST get-certificate --api
-----BEGIN CERTIFICATE-----
MIIBHzCBxaADAgECAgkA7AznVQK3XWkwCgYIKoZIzj0EAwIwFDESMBAGA1UEAwwJ
a2V5ZmVuZGVyMCAXDTcwMDEwMTAwMDAwMFoYDzk5OTkxMjMxMjM1OTU5WjAUMRIw
EAYDVQQDDAlrZXlmZW5kZXIwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAARbeCRl
F1ZIjK1bTfrPvtCoYDThMjdV1q8mq+B9FMDo4GIahTCUG/Ub6bCOcbip5pP92J3h
yMEcPuos72c1KcGjMAoGCCqGSM49BAMCA0kAMEYCIQC/BNrkCM5gpsVfa9EqQcM0
PCaADyZG7KKLgDv7asa5LwIhAKDXRE3Tdm9tYObO0X4p0CRQkl1+DnvGljzQe34C
JBax
-----END CERTIFICATE-----
Informationen über den Endpunkt /config/tls/cert.pem finden Sie in der API-Dokumentation.
Das TLS-Zertifikat kann wie folgt erstellt werden.
Erforderliche Optionen
Option |
Beschreibung |
---|---|
|
Der Typ des generierten Schlüssels |
|
Die Länge des generierten Schlüssels |
Beispiel
$ nitropy nethsm --host $NETHSM_HOST generate-tls-key -t Curve25519
Key for TLS interface generated on NetHSM localhost:8443
Informationen über den Endpunkt /config/tls/generate können in der API-Dokumentation gefunden werden.
Der Certificate Signing Request (CSR) für das Zertifikat kann wie folgt erstellt werden.
Erforderliche Optionen
Option |
Beschreibung |
---|---|
|
Erzeugen Sie eine CSR für das NetHSM TLS-Zertifikat |
|
Der Name des Landes |
|
Der Name des Bundeslandes oder der Provinz |
|
Der Name des Ortes |
|
Der Name der Organisation |
|
Der Name der Organisationseinheit |
|
Der gemeinsame Name |
|
Die E-Mail Adresse |
Beispiel
$ nitropy nethsm --host $NETHSM_HOST csr --api --country="DE" --state-or-province="Berlin" --locality="Berlin" --organization="Nitrokey" --organizational-unit="" --common-name="Nitrokey" --email-address="info@nitrokey.com"
-----BEGIN CERTIFICATE REQUEST-----
MIGBMDUCAQAwAjEAMCowBQYDK2VwAyEAE+nz+nOj80SWG25UbqVcQk6Ua84zuj5B
9qCtPpDUX2qgADAFBgMrZXADQQDwk9LrYDu83a1jgBGqW0I9BVXWEhP4gZLxlVV+
c102GFi963ZPIxG7Z5+uWplz+wr/Vmr7KLr6oM01M/AZPJQO
-----END CERTIFICATE REQUEST-----
Informationen über den Endpunkt /config/tls/csr.pem finden Sie in der API-Dokumentation.
Das Zertifikat kann wie folgt ersetzt werden.
Erforderliche Optionen
Option |
Beschreibung |
---|---|
|
Einstellen des Zertifikats für die NetHSM TLS-Schnittstelle |
Argumente
Argument |
Beschreibung |
---|---|
|
Zertifikat-Datei |
Beispiel
nitropy nethsm --host $NETHSM_HOST set-certificate --api /tmp/nethsm-certificate
Informationen über den Endpunkt /config/tls/csr.pem finden Sie in der API-Dokumentation.
Netzwerk#
Die Netzwerkkonfiguration definiert die Einstellungen für den Network Port.
Bemerkung
Diese Einstellungen konfigurieren nicht den BMC Network Port.
Die Netzwerkkonfiguration kann wie folgt abgerufen werden.
Erforderliche Optionen
Option |
Beschreibung |
---|---|
|
Abfrage der Netzwerkkonfiguration |
Beispiel
$ nitropy nethsm -h $NETHSM_HOST get-config --network
Configuration for NetHSM localhost:8443:
Network:
IP address: 192.168.1.1
Netmask: 255.255.255.0
Gateway: 0.0.0.0
Informationen über den Endpunkt /config/network finden Sie in der API-Dokumentation.
Stellen Sie die Netzwerkkonfiguration wie folgt ein.
Bemerkung
Das NetHSM unterstützt kein DHCP (Dynamic Host Configuration Protocol).
Bemerkung
Der NetHSM unterstützt IPv6 (Internet Protocol Version 6) nicht.
Erforderliche Optionen
Option |
Beschreibung |
---|---|
|
Die neue IP-Adresse |
|
Die neue Netzmaske |
|
Das neue Gateway |
Beispiel
$ nitropy nethsm -h $NETHSM_HOST set-network-config -a 192.168.1.1 -n 255.255.255.0 -g 0.0.0.0
Updated the network configuration for NetHSM localhost:8443
Informationen über den Endpunkt /config/network finden Sie in der API-Dokumentation.
Zeit#
Mit der Zeitkonfiguration wird die Systemzeit der NetHSM-Software eingestellt. Normalerweise ist es nicht erforderlich, die Systemzeit einzustellen, da sie während der Bereitstellung eingestellt wird.
Die Zeitkonfiguration kann wie folgt abgerufen werden.
Erforderliche Optionen
Option |
Beschreibung |
---|---|
|
Abfrage der Systemzeit |
Beispiel
$ nitropy nethsm -host $NETHSM_HOST get-config --time
Configuration for NetHSM localhost:8443:
Time: 2022-08-17 11:40:00+00:00
Informationen über den Endpunkt /config/time finden Sie in der API Dokumentation.
Stellen Sie die Uhrzeit des NetHSM ein.
Wichtig
Achten Sie darauf, dass Sie die Uhrzeit in der UTC-Zeitzone angeben.
Argumente
Argument |
Beschreibung |
---|---|
|
Die einzustellende Systemzeit (Format: JJJJ-MM-TTTHH:MM:SSZ) |
Beispiel
$ nitropy nethsm -h $NETHSM_HOST set-time 2022-08-17T11:40:00Z
Updated the system time for NetHSM localhost:8443
Informationen über den Endpunkt /config/time finden Sie in der API Dokumentation.
Metriken#
Der NetHSM protokolliert Metriken der Systemparameter. Unter Metrics finden Sie weitere Informationen zu den einzelnen Metriken.
Die Metriken können wie folgt abgerufen werden.
Erforderliche Rolle
Dieser Vorgang erfordert eine Authentifizierung mit der Rolle Metrics.
Beispiel
$ nitropy nethsm -h $NETHSM_HOST metrics
Metric Value
---------------------------- --------
client connections 0
established state 6
external.received bytes 989931
external.received packets 13239
external.transmitted bytes 25908953
external.transmitted packets 22037
free chunk count 322
gc compactions 0
gc major bytes 21348352
gc major collections 35
gc minor collections 2652
http response 200 28
http response 201 1
http response 204 1
http response 400 1
http response 403 1
http response 404 145
http response 412 1
http response time 0.084998
http response total 178
internal.received bytes 66541
internal.received packets 1130
internal.transmitted bytes 63802
internal.transmitted packets 1133
kv write 2
log errors 3
log warnings 3
maximum allocated space 64528384
maximum releasable bytes 1216
mmapped region count 0
new sleeper size 1
non-mmapped allocated bytes 64528384
sleep queue size 11
syn-rcvd state 0
timers 2
total allocated space 43940832
total client 1
total established 515
total free space 20587552
total sleeper size 12
total syn-rcvd 514
total timers 526
uptime 17626
Informationen über den Endpunkt /metrics“ finden Sie in der `API-Dokumentation.
Protokollierung#
Das NetHSM kann Systemereignisse über die serielle Schnittstelle oder einen Syslog-Server im Netzwerk protokollieren.
Wichtig
Bei jeder Produktionsbereitstellung sollte das NetHSM-Protokoll kontinuierlich überwacht werden, um eine sofortige Benachrichtigung über mögliche Sicherheitsprobleme zu ermöglichen.
Die Konfiguration des Syslog-Servers kann wie folgt abgefragt werden.
Erforderliche Optionen
Option |
Beschreibung |
---|---|
|
Abfrage der Protokollierungskonfiguration |
Beispiel
$ nitropy nethsm -h $NETHSM_HOST get-config --logging
Logging:
IP address: 0.0.0.0
Port: 514
Log level: info
Informationen über den Endpunkt /config/logging finden Sie in der API Dokumentation.
Die Konfiguration des Syslog-Servers kann wie folgt eingestellt werden.
Erforderliche Optionen
Option |
Beschreibung |
---|---|
|
Die IP-Adresse des neuen Protokollierungsziels |
|
Der Port des neuen Protokollierungsziels |
|
Die neue Protokollstufe |
Beispiel
$ nitropy nethsm -h $NETHSM_HOST set-logging-config -a 192.168.0.1 -p 514 -l info
Updated the logging configuration for NetHSM localhost:8443
Informationen über den Endpunkt /config/logging finden Sie in der API Dokumentation.
Die serielle Konsole funktioniert vom Start der NetHSM-Hardware an. Sie umfasst Ereignisse von der NetHSM-Firmware und der NetHSM-Software.
Die Einstellungen für die serielle Konsolenverbindung lauten wie folgt.
Einstellung |
Wert |
---|---|
Baudrate |
115200 |
Datenbits |
8 |
Stoppbits |
1 |
Parität |
Keine |
Durchflusskontrolle |
Keine |
Sicherung#
Die NetHSM Benutzerdaten können in einer Sicherungsdatei gespeichert werden. Diese Sicherungsdatei enthält alle Benutzerdaten, nämlich Konfigurationsspeicher, Authentifizierungsspeicher, Domänenschlüsselspeicher und Schlüsselspeicher.
Wichtig
Eine NetHSM-Systemsoftware im Modus Unattended Boot benötigt die Unlock Passphrase, wenn sie auf einer anderen NetHSM-Hardware wiederhergestellt wird. Weitere Informationen finden Sie im Kapitel Unlock Passphrase.
Wichtig
Ein NetHSM im Modus Unattended Boot befindet sich nach einer Wiederherstellung im gleichen Modus.
Bevor eine Sicherung gestartet werden kann, muss die Backup Passphrase festgelegt werden. Die Backup Passphrase wird zur Verschlüsselung der Daten in der Sicherungsdatei verwendet.
Warnung
Die Sicherungspassphrase kann nicht zurückgesetzt werden, ohne den aktuellen Wert zu kennen. Wenn die Sicherungspassphrase verloren geht, kann sie weder auf einen neuen Wert zurückgesetzt noch können die erstellten Sicherungen wiederhergestellt werden.
Die Backup-Passphrase kann wie folgt eingestellt werden.
Optionale Optionen
Option |
Beschreibung |
---|---|
-n`, ` ` ` ` –new-passphrase TEXT |
Die neue Sicherungspassphrase |
-p`, ` ` ` ` –current-passphrase TEXT |
Die aktuelle Sicherungspassphrase (oder eine leere Zeichenkette, falls nicht festgelegt) |
|
Vor dem Ändern der Passphrase nicht nach einer Bestätigung fragen |
Beispiel
$ nitropy nethsm -h $NETHSM_HOST -u admin set-backup-passphrase
New passphrase:
Repeat for confirmation:
Warning: The backup passphrase cannot be reset without knowing the current value. If the backup passphrase is lost, neither can it be reset to a new value nor can the created backups be restored.
Do you want to continue? [y/N]: y
The current backup passphrase (or an empty string if not set) []:
Updated the backup passphrase for NetHSM localhost:8443
Informationen über den Endpunkt /config/backup-passphrase finden Sie in der API Dokumentation.
Die Sicherung kann wie folgt durchgeführt werden.
Erforderliche Rolle
Dieser Vorgang erfordert eine Authentifizierung mit der Rolle Backup.
Argumente
Argument |
Beschreibung |
---|---|
|
Sicherungsdatei |
Beispiel
$ nitropy nethsm -h $NETHSM_HOST backup /tmp/nethsm-backup
Backup for localhost:8443 written to /tmp/backup
Informationen über den Endpunkt /system/backup finden Sie in der API Dokumentation.
Wiederherstellen#
Der NetHSM kann aus einer Sicherungsdatei wiederhergestellt werden.
Wenn der NetHSM Unprovisioned ist, werden alle Benutzerdaten einschließlich der Systemkonfiguration wiederhergestellt und das System neu gestartet. Daher kann das System anschließend andere Netzwerkeinstellungen, TLS-Zertifikate und Unlock Passphrase erhalten.
Wenn der NetHSM Provisioned ist, werden Benutzer und Benutzerschlüssel wiederhergestellt, nicht aber die Systemkonfiguration. In diesem Fall werden alle zuvor vorhandenen Benutzer und Benutzerschlüssel gelöscht. Der NetHSM endet im Zustand Operational.
Die Wiederherstellung kann wie folgt durchgeführt werden.
Optionale Optionen
Option |
Beschreibung |
---|---|
|
Die Backup-Passphrase |
|
Die einzustellende Systemzeit (Format: |
Wichtig
Vergewissern Sie sich, dass die Zeit Ihres lokalen Computers richtig eingestellt ist. Um eine andere Zeit einzustellen, geben Sie diese bitte manuell ein.
Argumente
Argument |
Beschreibung |
|
---|---|---|
|
Beispiel
$ nitropy nethsm -h $NETHSM_HOST restore /tmp/nethsm-backup
Backup passphrase:
Backup restored on NetHSM localhost:8443
Informationen über den Endpunkt /system/restore finden Sie in der API Dokumentation.
Clustering#
NetHSM ist zustandslos, so dass mehrere NetHSM-Geräte verwendet werden können, um einen extrem hohen Durchsatz zu verarbeiten und eine hohe Verfügbarkeit zu gewährleisten. Das PKCS#11-Modul unterstützt einen Round-Robin-Zeitplan für einen Cluster von NetHSM-Instanzen. Mehrere Instanzen von NetHSM können über verschlüsselte Backups synchronisiert werden. Dazu lädt ein separates System Sicherungsdateien zwischen den Instanzen herunter und hoch. Dieses separate System hat keinen Zugriff auf die Backup-Daten im Klartext, da die Backup-Dateien verschlüsselt sind. Die Synchronisation kann einfach mit pynitrokey geskriptet werden, wie in dieses Beispiel zeigt.
Software-Aktualisierung#
Software-Updates können in einem zweistufigen Verfahren installiert werden. Zunächst muss das Update-Image auf einen Provisioned NetHSM hochgeladen werden. Der NetHSM prüft die Authentizität, Integrität und Versionsnummer des Images. Optional zeigt der NetHSM die Versionshinweise an, falls vorhanden.
Warnung
Durch die Installation eines Beta-Updates kann es zu Datenverlusten kommen! Stabile Versionen sollten keine Datenverluste verursachen. Es wird jedoch empfohlen, vor der Aktualisierung ein Backup zu erstellen.
Die Aktualisierungsdatei kann wie folgt hochgeladen werden.
Argumente
Argument |
Beschreibung |
---|---|
|
Datei aktualisieren |
Beispiel
$ nitropy nethsm --host $NETHSM_HOST update /tmp/nethsm-update.img.bin
Image /tmp/nethsm-update.img.bin uploaded to NetHSM localhost:8443
Informationen über den Endpunkt /system/update finden Sie in der API Dokumentation.
Danach kann das Update angewendet oder abgebrochen werden. Bitte beachten Sie die gewünschte Option weiter unten. Wird der NetHSM vor dem „Commit“-Vorgang ausgeschaltet, muss die Update-Datei erneut hochgeladen werden.
Wichtig
Wenn das Hochladen des Update-Images mit Error: NetHSM request failed: Bad request -- malformed image
fehlschlägt, führen Sie bitte die folgenden Schritte aus.
Vergewissern Sie sich, dass Sie eine gültige Aktualisierungsdatei haben, indem Sie die mitgelieferte Signatur überprüfen.
Vergewissern Sie sich, dass Sie keine hohe Protokollierungsstufe, wie
DEBUG
aktiviert haben. Bitte lesen Sie das Kapitel Logging, um mehr über die Konfiguration der Protokollierungsebene zu erfahren.Starten Sie die Appliance neu, um belegten Speicherplatz freizugeben.
Das Update kann wie folgt angewendet (committed) werden. Eine Datenmigration wird nur durchgeführt nachdem die NetHSM erfolgreich die neue Systemsoftwareversion gebootet hat.
Beispiel
$ nitropy nethsm --host $NETHSM_HOST commit-update
Update successfully committed on NetHSM localhost:8443
Informationen über den Endpunkt /system/commit-update können in der API-Dokumentation gefunden werden.
Die Aktualisierung kann wie folgt abgebrochen werden.
Beispiel
$ nitropy nethsm --host $NETHSM_HOST cancel-update
Update successfully cancelled on NetHSM localhost:8443
Informationen über den Endpunkt /system/cancel-update können in der API-Dokumentation gefunden werden.
System-Informationen#
Systeminformationen wie Firmware-Version, Software-Version und Hardware-Version können wie folgt abgerufen werden.
Beispiel
$ nitropy nethsm -h $NETHSM_HOST system-info
Host: 192.168.1.1
Firmware version: 1.0-prod
Software version: 2.0
Hardware version: prodrive-hermes-1.0
Build tag: v2.0-0-g17ad829
Informationen über den Endpunkt /system/info finden Sie in der API-Dokumentation.
Neustart und Herunterfahren#
Der NetHSM kann neu gestartet und heruntergefahren werden, entweder aus der Ferne oder über die Neustart- und Ausschalttaste an der Vorderseite der NetHSM-Hardware.
Der Remote-Neustart kann wie folgt eingeleitet werden.
Beispiel
$ nitropy nethsm --host $NETHSM_HOST reboot
NetHSM localhost:8443 will be rebooted.
Do you want to continue? [y/N]: y
NetHSM localhost:8443 is about to reboot
Informationen über den Endpunkt /system/reboot können in der API-Dokumentation gefunden werden.
Die Fernabschaltung kann wie folgt eingeleitet werden.
Beispiel
$ nitropy nethsm --host $NETHSM_HOST shutdown
NetHSM localhost:8443 will be shutdown.
Do you want to continue? [y/N]: y
NetHSM localhost:8443 is about to shutdown
Informationen über den Endpunkt /system/shutdown können in der API-Dokumentation gefunden werden.
Zurücksetzen auf Werkseinstellungen#
Ein Provisioned NetHSM kann auf die Werkseinstellungen zurückgesetzt werden. In diesem Fall werden alle Benutzerdaten sicher gelöscht und der NetHSM bootet in einen Unprovisioned Zustand. Anschließend können Sie den NetHSM bereitstellen.
Das Zurücksetzen auf die Werkseinstellungen kann wie folgt durchgeführt werden.
Beispiel
$ nitropy nethsm -h $NETHSM_HOST factory-reset
NetHSM localhost:8443 will be set to factory defaults.
All data will be lost!
Do you want to continue? [y/N]: y
NetHSM localhost:8443 is about to perform a factory reset
Informationen über den Endpunkt /system/factory-reset finden Sie in der API Dokumentation.
Benutzerverwaltung#
Rollen#
Der NetHSM ermöglicht die Trennung von Aufgaben durch die Verwendung verschiedener Rollen. Jedem auf dem NetHSM konfigurierten Benutzerkonto ist eine der folgenden Rollen zugewiesen.
Rolle |
Beschreibung |
---|---|
Administrator |
Ein Benutzerkonto mit dieser Rolle hat Zugriff auf alle vom NetHSM bereitgestellten Operationen, mit Ausnahme der Schlüsselverwendungsoperationen, d. h. der Signierung und Entschlüsselung von Nachrichten. |
Operator |
Ein Benutzerkonto mit dieser Rolle hat Zugriff auf alle Schlüsselverwendungsvorgänge, eine schreibgeschützte Teilmenge der Schlüsselverwaltungsvorgänge und Benutzerverwaltungsvorgänge, die nur Änderungen für das eigene Konto zulassen. |
Metrik |
Ein Benutzerkonto mit dieser Rolle hat nur Zugriff auf schreibgeschützte Metrikoperationen. |
Backup |
Ein Benutzerkonto mit dieser Rolle hat nur Zugriff auf die Vorgänge, die zum Einleiten einer Systemsicherung erforderlich sind. |
Siehe Namespaces und Tags für detailliertere Zugriffsbeschränkungen.
Bemerkung
In einer zukünftigen Version können weitere Rollen eingeführt werden.
Benutzer hinzufügen#
Fügen Sie dem NetHSM ein Benutzerkonto hinzu. Jedes Benutzerkonto hat eine Rolle, die angegeben werden muss. Bitte lesen Sie das Kapitel Rollen um mehr über Rollen zu erfahren.
Optional kann ein Benutzer einem *Namespace* zugewiesen werden.
Bemerkung
Die Benutzer-ID muss alphanumerisch sein. Der NetHSM vergibt eine zufällige Benutzer-ID, wenn keine angegeben wird.
Ein Benutzerkonto kann wie folgt hinzugefügt werden.
Erforderliche Optionen
Option |
Beschreibung |
---|---|
|
Der echte Name des neuen Benutzers |
-N`, ` ` ` ` –namespace TEXT |
Der Namespace des neuen Benutzers |
|
Die Rolle des neuen Benutzers |
|
Die Passphrase des neuen Benutzers |
Optionale Optionen
Option |
Beschreibung |
---|---|
|
Die Benutzer-ID des neuen Benutzers |
Beispiel
$ nitropy nethsm --host $NETHSM_HOST add-user --real-name "Nitrokey Operator" --role Operator --user-id operator1
Passphrase:
Repeat for confirmation:
User operator1 added to NetHSM localhost:8443
Informationen über den Endpunkt /users, um einen Benutzer ohne Angabe der Benutzer-ID zu erstellen, finden Sie in der API-Dokumentation.
Informationen über den Endpunkt /users/{UserID}, um einen Benutzer mit Angabe der Benutzer-ID zu erstellen, finden Sie in der API-Dokumentation.
Standardmäßig wird der Namespace von dem Benutzer geerbt, der den neuen Benutzer hinzufügt. Nur Benutzer ohne Namespace können einen anderen Namespace für neue Benutzer wählen. Der Namespace wird als Präfix für den Benutzernamen verwendet, z. B. namespace~user. Daher kann derselbe Benutzername in mehreren Namespaces verwendet werden.
Benutzer löschen#
Löschen Sie ein Benutzerkonto aus dem NetHSM.
Warnung
Die Löschung ist dauerhaft und kann nicht rückgängig gemacht werden.
Ein Benutzerkonto kann wie folgt gelöscht werden.
Argumente
Argument |
Beschreibung |
---|---|
|
Die Benutzerkennung des Benutzers. |
Beispiel
$ nitropy nethsm --host $NETHSM_HOST delete-user operator1
User operator1 deleted on NetHSM localhost:8443
Informationen über den Endpunkt /users/{UserID} finden Sie in der API-Dokumentation.
Benutzer auflisten#
Liste der Benutzer auf dem NetHSM.
Die Liste kann wie folgt abgerufen werden.
Optionale Optionen
Option |
Beschreibung |
---|---|
|
Abfrage des echten Namens und der Rolle des Benutzers |
Beispiel
$ nitropy nethsm --host $NETHSM_HOST list-users
Users on NetHSM localhost:8843:
User ID Real name Role
--------- ----------------- -------------
operator1 Nitrokey Operator Operator
admin admin Administrator
Informationen über den Endpunkt /users finden Sie in der API-Dokumentation.
Informationen über den Endpunkt /users/{UserID} finden Sie in der API-Dokumentation.
Benutzer innerhalb eines Namensraums können nur Benutzer im selben Namensraum sehen.
Benutzer-Passphrase#
Die Passphrase eines Benutzerkontos kann zurückgesetzt werden. Eine Passphrase wird beim Hinzufügen eines Benutzerkontos initial festgelegt.
Bemerkung
Passphrasen müssen >= 10 und <= 200 Zeichen haben.
Die Benutzerpassphrase kann wie folgt festgelegt werden.
Erforderliche Optionen
Option |
Beschreibung |
---|---|
|
Die Benutzer-ID des Benutzers |
|
Die neue Passphrase des Benutzers |
Beispiel
$ nitropy nethsm --host $NETHSM_HOST set-passphrase --user-id operator1
Passphrase:
Repeat for confirmation:
Updated the passphrase for user operator1 on NetHSM localhost:8443
Informationen über den Endpunkt /users/{UserID}/passphrase finden Sie in der API Dokumentation.
Namespaces#
Namespaces wurden mit der Softwareversion 2.0 eingeführt. Bei der Migration von einer früheren Version der Software werden alle vorhandenen Benutzer und Schlüssel ohne Namensraum sein.
Ähnlich wie das Konzept der Partitionen unterstützt NetHSM die flexibleren Namespaces, die Schlüssel, Administratoren und Benutzer auf einem NetHSM in separate Untergruppen gruppieren. Benutzer können nur Schlüssel im selben Namespace sehen und verwenden und können nur Benutzer im selben Namespace sehen. Es ist nicht möglich, Benutzer zu sehen und Schlüssel anderer Namespaces zu sehen und zu verwenden. Wenn ein neuer Benutzer angelegt wird, erbt er den Namespace des Benutzers, der ihn angelegt hat. Die verfügbare Speicherkapazität wird von allen Namespaces gemeinsam genutzt.
Benutzer mit der Rolle Administrator werden auch als R-Administrator bezeichnet, wenn sie sich nicht in einem Namespace befinden, oder N-Administrator, wenn sie sich in einem Namespace befinden.
Besondere Regeln gelten für R-Administrator Benutzer: Sie können den Namespace für neue Benutzer festlegen, alle Benutzer auflisten und den Namespace eines Benutzers abfragen. Auch die NetHSM-Konfiguration kann nur von R-Administrator Benutzern eingesehen werden. R-Administratoren können keine Schlüssel in einem Namespace sehen.
Um Schlüssel und Benutzer in einem Namespace erzeugen zu können, muss der Namespace von einem R-Administrator Benutzer erstellt werden. Sobald der Namespace erstellt wurde, können R-Administrator Benutzer keine Benutzer mehr in diesem Namespace erstellen, löschen oder ändern. Dies ermöglicht es, die Schlüssel der Namespaces vor dem Zugriff durch R-Administrator zu schützen (auch indirekt durch Hinzufügen eines neuen Benutzers im Namen oder Zurücksetzen der Anmeldedaten eines bestehenden Benutzers oder Administrators). Daher ist es notwendig, einen N-Administrator Benutzer für den Namespace zu erstellen, bevor der Namespace erstellt wird. R-Administrator Benutzer können auch einen Namespace mit allen enthaltenen Schlüsseln löschen.
Namespaces auflisten#
Auflistung der Namespaces auf dem NetHSM.
Die Liste kann wie folgt abgerufen werden.
Beispiel
$ nitropy nethsm --host $NETHSM_HOST list-namespaces
Namespaces on NetHSM localhost:8843:
- ns1
- ns2
Informationen über den Endpunkt /namespaces finden Sie in der API-Dokumentation.
Namespace hinzufügen#
Fügen Sie dem NetHSM einen Namensraum hinzu.
R-Administrator Benutzer können bereits neue Konten im Namensraum anlegen, bevor dieser erstellt wird. Nach der Erstellung können nur N-Administrator Benutzer die Benutzer im Namespace verwalten. Die Erstellung und Verwendung von Schlüsseln im Namespace ist erst möglich, nachdem er hinzugefügt worden ist.
Bemerkung
Die Namespace-ID muss alphanumerisch sein. Der NetHSM weist eine zufällige Benutzer-ID zu, wenn keine angegeben wird.
Ein Namespace kann wie folgt hinzugefügt werden.
Argumente
Argument |
Beschreibung |
|
---|---|---|
`NAMESPACE`| Der neue Namespace. |
Beispiel
$ nitropy nethsm --host $NETHSM_HOST add-namespace ns1
Namespace ns1 added to NetHSM localhost:8443
Informationen über den Endpunkt /namespaces/{NamespaceID} finden Sie in der API-Dokumentation.
Namespace löschen#
Löschen eines Namensraumes aus dem NetHSM.
Beim Löschen eines Namensraums werden auch alle Schlüssel dieses Namensraums gelöscht. Verbleibende Benutzer im Namensraum können keine Schlüssel hinzufügen, bis der Namensraum erneut hinzugefügt wurde.
Ein Namespace kann wie folgt gelöscht werden.
Argumente
Argument |
Beschreibung |
---|---|
NAMESPACE |
Der zu löschende Namespace. |
Beispiel
$ nitropy nethsm --host $NETHSM_HOST delete-namespace ns1
Namespace ns1 deleted on NetHSM localhost:8443
Informationen über den Endpunkt /namespaces/{NamespaceID} finden Sie in der API-Dokumentation.