Administration#

Ce chapitre décrit les tâches administratives pour les utilisateurs ayant le rôle Administrateur. Veuillez vous reporter au chapitre Rôles pour en savoir plus sur ce rôle.

Important

Veillez à lire les informations figurant au début de ce document avant de commencer à travailler.

Gestion du système#

Informations sur le dispositif#

Les informations sur le fournisseur et le produit d’un NetHSM peuvent être récupérées comme suit.

Exemple

$ nitropy nethsm --host $NETHSM_HOST info
Host:    localhost:8443
Vendor:  Nitrokey GmbH
Product: NetHSM

Mode de démarrage#

NetHSM peut être utilisé en mode Attended Boot et Unattended Boot.

Mode de démarrage

Description

Attendu Boot

La Passphrase de déverrouillage doit être saisie à chaque démarrage, elle est utilisée pour décrypter les Données utilisateur. Pour des raisons de sécurité, ce mode est recommandé.

Boot non surveillé

Aucune Passphrase de déverrouillage n’est requise, le NetHSM peut donc démarrer sans surveillance. Utilisez ce mode si vos exigences de disponibilité ne peuvent pas être satisfaites avec le mode Démarrage assisté.

Le mode de démarrage actuel peut être récupéré comme suit.

Exemple

$ nitropy nethsm --host $NETHSM_HOST get-config --unattended-boot
Configuration for NetHSM localhost:8443:
   Unattended boot: off

Le mode de démarrage peut être modifié comme suit.

Arguments

Arguments

Description

Statut

Active ou désactive l’option Unattended Boot. Peut avoir la valeur on ou off.

Exemple

$ nitropy nethsm --host $NETHSM_HOST set-unattended-boot on
Updated the unattended boot configuration for NetHSM localhost:8443

État#

Le logiciel NetHSM a quatre états : Unprovisioned, Provisioned, Locked, et Operational.

État

Description

Non provisionné

NetHSM sans configuration (défaut d’usine)

Prévu

NetHSM avec configuration. L’état Provisioned implique l’état Operational ou Locked.

Opérationnel

NetHSM avec configuration et prêt à exécuter des commandes. L’état Operational implique l’état Provisioned.

Locked

NetHSM avec configuration mais protégé (nécessite un déverrouillage). L’état Operational implique l’état Provisioned.

États et transitions du NetHSM

États et transitions du NetHSM#


L’état actuel du NetHSM peut être récupéré comme suit.

Exemple

$ nitropy nethsm --host $NETHSM_HOST state
NetHSM localhost:8443 is Unprovisioned

Un nouveau NetHSM a un état Unprovisioned et après le provisionnement, il entre dans l’état Operational. Le provisionnement d’un NetHSM est décrit dans le chapitre Provisionnement.

Un NetHSM en état Opérationnel peut être verrouillé à nouveau pour le protéger comme suit.

Exemple

$ nitropy nethsm --host $NETHSM_HOST lock
NetHSM localhost:8443 locked

Un NetHSM en état Locked peut être déverrouillé comme suit.

Exemple

$ nitropy nethsm --host $NETHSM_HOST unlock
NetHSM localhost:8443 unlocked

Déverrouiller la phrase d’authentification#

La phrase de passe de déverrouillage est utilisée pour dériver une clé de déverrouillage si le NetHSM est en état verrouillé. La phrase de passe est initialement définie lors du provisionnement du NetHSM.

La Phrase de passe de déverrouillage peut être définie comme suit.

Options facultatives

Option

Description

-p, --passphrase TEXT

La nouvelle phrase de passe de déverrouillage

Exemple

$ nitropy nethsm --host $NETHSM_HOST set-unlock-passphrase
Passphrase:
Repeat for confirmation:
Updated the unlock passphrase for localhost:8443

Certificat TLS#

Le certificat TLS est utilisé pour l’API REST basée sur HTTPS, et donc également utilisé par nitropy. Lors du provisionnement, un certificat auto-signé est créé. Le certificat peut être remplacé, par exemple par un certificat signé d’une autorité de certification (CA). Dans ce cas, une demande de signature de certificat (CSR) doit être générée. Après la signature, le certificat doit être importé dans le NetHSM.

Un changement n’est nécessaire que lorsque le certificat doit être remplacé. Ce changement peut consister à le remplacer par un certificat signé par une autorité de certification (CA).

Le certificat TLS peut être récupéré comme suit.

Options requises

Option

Description

-a, --api

Définir le certificat pour l’interface TLS de NetHSM

Exemple

$ nitropy nethsm --host $NETHSM_HOST get-certificate --api
-----BEGIN CERTIFICATE-----
MIIBHzCBxaADAgECAgkA7AznVQK3XWkwCgYIKoZIzj0EAwIwFDESMBAGA1UEAwwJ
a2V5ZmVuZGVyMCAXDTcwMDEwMTAwMDAwMFoYDzk5OTkxMjMxMjM1OTU5WjAUMRIw
EAYDVQQDDAlrZXlmZW5kZXIwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAARbeCRl
F1ZIjK1bTfrPvtCoYDThMjdV1q8mq+B9FMDo4GIahTCUG/Ub6bCOcbip5pP92J3h
yMEcPuos72c1KcGjMAoGCCqGSM49BAMCA0kAMEYCIQC/BNrkCM5gpsVfa9EqQcM0
PCaADyZG7KKLgDv7asa5LwIhAKDXRE3Tdm9tYObO0X4p0CRQkl1+DnvGljzQe34C
JBax
-----END CERTIFICATE-----

Le certificat TLS peut être généré comme suit.

Options requises

Option

Description

-t, --type [RSA|Curve25519|EC_P224|EC_P256|EC_P384|EC_P521]

Le type de la clé générée

-l, --length INTEGER

La longueur de la clé générée

Exemple

$ nitropy nethsm --host $NETHSM_HOST generate-tls-key -t Curve25519
Key for TLS interface generated on NetHSM localhost:8443

La demande de signature de certificat (CSR) pour le certificat peut être générée comme suit.

Options requises

Option

Description

-a, --api

Générer un CSR pour le certificat TLS de NetHSM

--country TEXT

Le nom du pays

--state-or-province TEXT

Le nom de l’État ou de la province

--locality TEXT

Le nom de la localité

--organization TEXT

Le nom de l’organisation

--organizational-unit TEXT

Le nom de l’unité d’organisation

--common-name TEXT

Le nom commun

--email-address TEXT

L’adresse électronique

Exemple

$ 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-----

Le certificat peut être remplacé comme suit.

Options requises

Option

Description

-a, --api

Définir le certificat pour l’interface TLS de NetHSM

Arguments

Arguments

Description

FILENAME

Fichier de certificat

Exemple

nitropy nethsm --host $NETHSM_HOST set-certificate --api /tmp/nethsm-certificate

Réseau#

La configuration du réseau définit les paramètres utilisés pour le Port réseau.

Note

Ces paramètres ne permettent pas de configurer le Port réseau BMC.

La configuration du réseau peut être récupérée comme suit.

Options requises

Option

Description

--network

Interroger la configuration du réseau

Exemple

$ 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

Définissez la configuration du réseau comme suit.

Note

Le NetHSM ne prend pas en charge le protocole DHCP (Dynamic Host Configuration Protocol).

Note

Le NetHSM ne prend pas en charge l’IPv6 (Internet Protocol version 6).

Options requises

Option

Description

-a, --ip-address

La nouvelle adresse IP

-n, --netmask

Le nouveau masque de réseau

-n, --netmask

La nouvelle passerelle

Exemple

$ 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

Temps#

La configuration de l’heure définit l’heure système du logiciel NetHSM. Il n’est généralement pas nécessaire de définir l’heure système, car elle est définie lors du provisionnement.

La configuration horaire peut être récupérée comme suit.

Options requises

Option

Description

--time

Interroger l’heure du système

Exemple

$ nitropy nethsm -host $NETHSM_HOST get-config --time
Configuration for NetHSM localhost:8443:
Time:            2022-08-17 11:40:00+00:00

Réglez l’heure du NetHSM.

Important

Assurez-vous de passer l’heure dans le fuseau horaire UTC.

Arguments

Arguments

Description

time

L’heure du système à définir (Format : YYYY-MM-DDTHH:MM:SSZ)

Exemple

$ nitropy nethsm -h $NETHSM_HOST set-time 2022-08-17T11:40:00Z
Updated the system time for NetHSM localhost:8443

Métriques#

Le NetHSM enregistre les métriques des paramètres du système.

Note

Cette commande nécessite l’authentification d’un utilisateur possédant le rôle Metrics. Veuillez consulter le chapitre Rôles pour en savoir plus sur ce rôle.

Les métriques peuvent être récupérées comme suit.

Exemple

$ 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

Enregistrement#

Le NetHSM peut enregistrer les événements système sur le port série ou sur un serveur syslog du réseau.

La console série fonctionne dès le début du matériel du NetHSM. Elle inclut les événements provenant du microprogramme NetHSM et du logiciel NetHSM.

Les paramètres de connexion de la console série sont les suivants.

Réglage de

Valeur

Vitesse de transmission

115200

Bits de données

8

Bits d’arrêt

1

Parité

Aucun

Contrôle du débit

Aucun

La configuration du serveur syslog peut être récupérée comme suit.

Options requises

Option

Description

--network

Interroger la configuration de la journalisation

Exemple

$ nitropy nethsm -h $NETHSM_HOST get-config --logging
Logging:
   IP address:    0.0.0.0
   Port:          514
   Log level:     info

La configuration du serveur syslog peut être définie comme suit.

Options requises

Option

Description

-p, --passphrase TEXT

L’adresse IP de la nouvelle destination de journalisation

-p, --port INTEGER

Le port de la nouvelle destination de journalisation

-l, --log-level [debug|info|warning|error]

Le nouveau niveau de journal

Exemple

$ 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

Sauvegarde#

Les données utilisateur de NetHSM peuvent être enregistrées dans un fichier de sauvegarde. Ce fichier de sauvegarde contient toutes les Données utilisateur, à savoir Mémoire de configuration, Mémoire d’authentification, Mémoire de clés de domaine et Mémoire de clés.

Important

Un logiciel système NetHSM en mode Unattended Boot nécessitera le Unlock Passphrase s’il est restauré sur un matériel NetHSM différent. Veuillez vous reporter au chapitre Unlock Passphrase pour en savoir plus.

Important

Un NetHSM en mode Unattended Boot sera dans le même mode après une restauration.

Avant qu’une sauvegarde puisse être lancée, la phrase de passe de sauvegarde doit être définie. La phrase de passe de sauvegarde est utilisée pour crypter les données du fichier de sauvegarde.

La phrase de passe de sauvegarde peut être définie comme suit.

Options facultatives

Option

Description

-p, --passphrase TEXT

La nouvelle phrase de passe de sauvegarde

Exemple

$ nitropy nethsm -h $NETHSM_HOST -u admin set-backup-passphrase
Passphrase:
Repeat for confirmation:
Updated the backup passphrase for NetHSM localhost:8443

Note

Cette commande nécessite l’authentification d’un utilisateur ayant le rôle Backup. Veuillez consulter le chapitre Rôles pour en savoir plus.

La sauvegarde peut être exécutée comme suit.

Arguments

Arguments

Description

FILENAME

Fichier de sauvegarde

Exemple

$ nitropy nethsm -h $NETHSM_HOST backup /tmp/nethsm-backup
Backup for localhost:8443 written to /tmp/backup

Note

Ce fichier de sauvegarde peut être restauré uniquement sur une instance NetHSM non provisionnée.

Restaurer#

Le NetHSM peut être restauré à partir d’un fichier de sauvegarde.

Note

Le NetHSM doit être dans un état Unprovisioned.

La restauration peut être appliquée comme suit.

Options facultatives

Option

Description

-p, --backup-passphrase passphrase

La Phrase de passe de sauvegarde.

-t, --system-time

L’heure système à définir (Format : YYYY-MM-DDTHH:MM:SSZ)

Important

Assurez-vous que l’heure de votre ordinateur local est correctement réglée. Pour régler une heure différente, veuillez la fournir manuellement.

Arguments

Arguments

Description

FILENAME | Restaurer le fichier

Exemple

$ nitropy nethsm -h $NETHSM_HOST restore /tmp/nethsm-backup
Backup passphrase:
Backup restored on NetHSM localhost:8443

Mise à jour#

Les mises à jour du NetHSM peuvent être installées en deux étapes. Tout d’abord, l’image de mise à jour doit être téléchargée sur le NetHSM. L’image est vérifiée et validée automatiquement.

Avertissement

Une perte de données peut se produire en raison de l’installation d’une mise à jour bêta !

Le fichier de mise à jour peut être téléchargé comme suit.

Arguments

Arguments

Description

FILENAME

Mise à jour du fichier

Exemple

$ nitropy nethsm --host $NETHSM_HOST update /tmp/nethsm-update.img.cpio
Image /tmp/nethsm-update.img.cpio uploaded to NetHSM localhost:8443

Ensuite, la mise à jour peut être appliquée ou interrompue. Veuillez vous référer à l’option souhaitée ci-dessous.

La mise à jour peut être appliquée (engagée) comme suit.

Exemple

$ nitropy nethsm --host $NETHSM_HOST commit-update
Update successfully committed on NetHSM localhost:8443

La mise à jour peut être annulée comme suit.

Exemple

$ nitropy nethsm --host $NETHSM_HOST cancel-update
Update successfully cancelled on NetHSM localhost:8443

Redémarrage et arrêt#

Le NetHSM peut être redémarré et arrêté, soit à distance, soit à l’aide du bouton de redémarrage et de mise hors tension situé à l’avant du matériel du NetHSM.

Le redémarrage à distance peut être initié comme suit.

Exemple

$ 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

L’arrêt à distance peut être déclenché comme suit.

Exemple

$ 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

Réinitialisation des paramètres d’usine#

Le NetHSM peut être réinitialisé aux valeurs d’usine par défaut. Au cours de ce processus, toutes les données utilisateur sont supprimées.

La réinitialisation aux valeurs par défaut de l’usine peut être effectuée comme suit.

Exemple

$ 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

Gestion des utilisateurs#

Rôles#

Le NetHSM permet la séparation des tâches en utilisant différents rôles. Chaque compte utilisateur configuré sur le NetHSM se voit attribuer l’un des Rôles suivants.

Rôle

Description

Administrateur

Un compte utilisateur avec ce rôle a accès à toutes les opérations fournies par le NetHSM, à l’exception des opérations d’utilisation des clés, c’est-à-dire la signature et le décryptage des messages.

Opérateur

Un compte d’utilisateur avec ce rôle a accès à toutes les opérations d’utilisation des clés, à un sous-ensemble d’opérations de gestion des clés en lecture seule et à des opérations de gestion des utilisateurs permettant des changements uniquement pour leur propre compte.

Metrics

Un compte utilisateur avec ce rôle a accès aux opérations de métriques en lecture seule uniquement.

Backup

Un compte utilisateur avec ce rôle a accès aux opérations requises pour initier une sauvegarde du système uniquement.

Note

Dans une prochaine version, des Rôles supplémentaires pourront être introduits.

Ajouter un utilisateur#

Ajoutez un compte d’utilisateur au NetHSM. Chaque compte d’utilisateur possède un Rôle, qui doit être spécifié. Veuillez vous reporter au chapitre Rôles pour en savoir plus sur les Rôles.

Note

Le NetHSM attribue un ID utilisateur aléatoire si aucun n’est spécifié.

Un compte d’utilisateur peut être ajouté comme suit.

Options requises

Option

Description

-n, --real-name TEXT

Le nom réel de l’utilisateur

-r, --role [Administrator|Operator|Metrics|Backup]

Le Rôle du nouvel utilisateur

-p, --passphrase TEXT

La phrase de passe du nouvel utilisateur

Options facultatives

Option

Description

-u, --user-id TEXT

L’ID utilisateur du nouvel utilisateur

Exemple

$ 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

Supprimer l’utilisateur#

Supprimer un compte d’utilisateur du NetHSM.

Avertissement

La suppression est permanente et ne peut être annulée.

Un compte d’utilisateur peut être supprimé de la manière suivante.

Arguments

Arguments

Description

USER_ID

L’identifiant de l’utilisateur.

Exemple

$ nitropy nethsm --host $NETHSM_HOST delete-user operator1
User operator1 deleted on NetHSM localhost:8443

Liste des utilisateurs#

Dresser la liste des utilisateurs du NetHSM.

La liste peut être récupérée comme suit.

Options facultatives

Option

Description

--details, --no-details

Demander le nom réel et le rôle de l’utilisateur

Exemple

$ nitropy nethsm --host $NETHSM_HOST list-users
Users on NetHSM localhost:8843:

User ID        Real name               Role
---------      -----------------       -------------
operator1      Nitrokey Operator       Operator
admin          admin                   Administrator

Phrase de passe de l’utilisateur#

La phrase de passe d’un compte utilisateur peut être réinitialisée. Une phrase de passe est initialement définie lors de l’ajout d’un compte d’utilisateur.

Note

Les phrases de passe doivent avoir >= 10 et <= 200 caractères.

La phrase de passe de l’utilisateur peut être définie comme suit.

Options requises

Option

Description

-u, --user-id TEXT

L’ID de l’utilisateur

-p, --passphrase TEXT

La nouvelle phrase de passe de l’utilisateur

Exemple

$ nitropy nethsm --host $NETHSM_HOST set-passphrase --user-id operator1
Passphrase:
Repeat for confirmation:
Updated the passphrase for user operator1 on NetHSM localhost:8443

Étiquettes pour les utilisateurs#

Les étiquettes peuvent être utilisées pour définir des restrictions d’accès aux clés, et sont une fonction facultative. Elles ne peuvent être attribuées qu’aux comptes utilisateurs ayant le rôle Opérateur. Les Opérateurs peuvent voir toutes les clés, mais n’utilisent que celles qui ont au moins un Tag correspondant. Une clé ne peut pas être modifiée par un utilisateur Opérateur.

Pour savoir comment utiliser les Balises sur les clés, veuillez vous reporter à Balises pour les clés.

Le Tag peut être ajouté comme suit.

Arguments

Arguments

Description

USER_ID

L’identifiant de l’utilisateur pour définir le tag.

TAG

La balise à définir sur l’ID utilisateur.

Exemple

nitropy nethsm --host $NETHSM_HOST add-operator-tag operator1 berlin
Added tag berlin for user operator1 on the NetHSM localhost:8443

Le Tag peut être supprimé comme suit.

Arguments

Arguments

Description

USER_ID

L’identifiant de l’utilisateur pour définir le tag.

TAG

La balise à définir sur l’ID utilisateur.

Exemple

nitropy nethsm --host $NETHSM_HOST delete-operator-tag operator1 berlin
Deleted tag berlin for user operator1 on the NetHSM localhost:8443