Amministrazione¶
Questo capitolo descrive le attività amministrative per gli utenti con il ruolo Administrator. Per ulteriori informazioni sul ruolo, consultare il capitolo Ruoli.
Importante
Assicuratevi di aver letto le informazioni all’inizio di questo documento prima di iniziare a lavorare.
Gestione del sistema¶
Informazioni sul dispositivo¶
Le informazioni sul fornitore e sul prodotto di un NetHSM possono essere recuperate come segue.
Esempio
$ nitropy nethsm --host $NETHSM_HOST info
Host: localhost:8443
Vendor: Nitrokey GmbH
Product: NetHSM
Le informazioni sull’endpoint /info si trovano nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_info>`__.
Modalità di avvio¶
NetHSM può essere usato in modalità Attended Boot e Unattended Boot.
Modalità di avvio |
Descrizione |
---|---|
Stivale frequentato |
Il NetHSM si avvia in uno stato _bloccato_. Ad ogni avvio è necessario inserire la Passphrase di sblocco che viene utilizzata per decriptare i dati utente. Per motivi di sicurezza, questa modalità è consigliata ed è quella predefinita per un sistema appena fornito. |
Avvio non presidiato |
Il sistema si avvia in modalità non presidiata senza la necessità di inserire la Passphrase di sblocco ** in uno stato _Operational_. Utilizzare questa modalità se i requisiti di disponibilità non possono essere soddisfatti con la modalità Attended Boot. |
Avvertimento
Indipendentemente dalla modalità di avvio, la Unlock Passphrase mantiene la sua validità ed è necessaria per il ripristino dei backup su altri hardware. Tenere sempre al sicuro la Unlock Passphrase.
La modalità di avvio corrente può essere recuperata come segue.
Esempio
$ nitropy nethsm --host $NETHSM_HOST get-config --unattended-boot
Configuration for NetHSM localhost:8443:
Unattended boot: off
Le informazioni sull’endpoint /config/unattended-boot si trovano nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_config-unattended-boot>`__.
La modalità di avvio può essere modificata come segue. Al successivo avvio, il NetHSM si comporterà di conseguenza.
Argomenti
Argomento |
Descrizione |
---|---|
Stato |
Abilita o disabilita l”avvio non presidiato. Può avere il valore |
Esempio
$ nitropy nethsm --host $NETHSM_HOST set-unattended-boot on
Updated the unattended boot configuration for NetHSM localhost:8443
Le informazioni sull’endpoint /config/unattended-boot si trovano nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_config-unattended-boot>`__.
Stato¶
Il software NetHSM ha quattro stati: Non approvato, Approvvigionato, Bloccato e Operativo.
Stato |
Descrizione |
---|---|
Non previsto |
NetHSM senza configurazione (impostazione di fabbrica) |
Provvisto |
NetHSM con configurazione. Lo stato Provisioned implica lo stato Operational o Locked. |
Operativo |
NetHSM con la configurazione e pronto a eseguire i comandi. Lo stato Operational implica lo stato Provisioned. |
Bloccato |
NetHSM con configurazione ma archivi di dati crittografati e inaccessibili. In genere, il passo successivo è sbloccare il sistema. Lo stato Locked implica lo stato Provisioned. |
Lo stato attuale del NetHSM può essere recuperato come segue.
Esempio
$ nitropy nethsm --host $NETHSM_HOST state
NetHSM localhost:8443 is Unprovisioned
Le informazioni sull’endpoint /health/state sono disponibili nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_health-state>`__.
Un nuovo NetHSM ha uno stato Unprovisioned e dopo il provisioning passa allo stato Operational. Il provisioning di un NetHSM è descritto nel capitolo Provisioning.
Un NetHSM in stato Operativo può essere bloccato nuovamente per proteggerlo come segue.
Esempio
$ nitropy nethsm --host $NETHSM_HOST lock
NetHSM localhost:8443 locked
Le informazioni sull’endpoint /lock si trovano nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_lock>`__.
Un NetHSM nello stato Locked può essere sbloccato come segue. Mentre il NetHSM si trova nello stato _bloccato_ non sono possibili altre operazioni. Successivamente, il NetHSM si trova in uno stato _Operational_.
Esempio
$ nitropy nethsm --host $NETHSM_HOST unlock
NetHSM localhost:8443 unlocked
Le informazioni sull’endpoint /sblocco si trovano nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_unlock>`__.
Passphrase di sblocco¶
La Passphrase di sblocco viene utilizzata per ricavare una chiave di sblocco se il NetHSM è in stato di blocco. La passphrase viene impostata inizialmente durante il provisioning del NetHSM.
Avvertimento
La passphrase di sblocco non può essere ripristinata senza conoscere il valore attuale. Se la passphrase di sblocco viene persa, non è possibile ripristinare un nuovo valore né sbloccare il NetHSM.
La Passphrase di sblocco può essere impostata come segue.
Opzioni opzionali
Opzione |
Descrizione |
---|---|
|
La nuova passphrase di sblocco |
|
La passphrase di sblocco corrente |
|
Non chiedere conferma prima di modificare la passphrase. |
Esempio
$ 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
Le informazioni sull’endpoint /config/unlock-passphrase si trovano nella documentazione dell’API.
Certificato TLS¶
Il certificato TLS viene utilizzato per l’API REST basata su HTTPS e quindi anche da nitropy. Durante il provisioning viene creato un certificato autofirmato. Il certificato può essere sostituito, ad esempio con un certificato firmato da un’autorità di certificazione (CA). In questo caso è necessario generare una Certificate Signing Request (CSR). Dopo la firma, il certificato deve essere importato nel NetHSM.
La modifica è necessaria solo quando il certificato deve essere sostituito. Tale modifica può consistere nella sostituzione con un certificato firmato da un’autorità di certificazione (CA).
Il certificato TLS può essere recuperato come segue.
Opzioni richieste
Opzione |
Descrizione |
---|---|
|
Get the certificate for the NetHSM TLS interface |
Esempio
$ nitropy nethsm --host $NETHSM_HOST get-certificate --api
-----BEGIN CERTIFICATE-----
MIIBHzCBxaADAgECAgkA7AznVQK3XWkwCgYIKoZIzj0EAwIwFDESMBAGA1UEAwwJ
a2V5ZmVuZGVyMCAXDTcwMDEwMTAwMDAwMFoYDzk5OTkxMjMxMjM1OTU5WjAUMRIw
EAYDVQQDDAlrZXlmZW5kZXIwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAARbeCRl
F1ZIjK1bTfrPvtCoYDThMjdV1q8mq+B9FMDo4GIahTCUG/Ub6bCOcbip5pP92J3h
yMEcPuos72c1KcGjMAoGCCqGSM49BAMCA0kAMEYCIQC/BNrkCM5gpsVfa9EqQcM0
PCaADyZG7KKLgDv7asa5LwIhAKDXRE3Tdm9tYObO0X4p0CRQkl1+DnvGljzQe34C
JBax
-----END CERTIFICATE-----
Le informazioni sull’endpoint /config/tls/cert.pem si trovano nella documentazione dell’API.
Il certificato TLS può essere generato come segue.
Opzioni richieste
Opzione |
Descrizione |
---|---|
|
Il tipo di chiave generata |
|
La lunghezza della chiave generata |
Esempio
$ nitropy nethsm --host $NETHSM_HOST generate-tls-key -t Curve25519
Key for TLS interface generated on NetHSM localhost:8443
Le informazioni sull’endpoint /config/tls/generate si trovano nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_config-tls-generate>`__.
La Certificate Signing Request (CSR) per il certificato può essere generata come segue.
Opzioni richieste
Opzione |
Descrizione |
---|---|
|
Generare un CSR per il certificato NetHSM TLS |
|
Il nome del paese |
|
Il nome dello Stato o della provincia |
|
Il nome della località |
|
Il nome dell’organizzazione |
|
Il nome dell’unità organizzativa |
|
Il nome comune |
|
L’indirizzo e-mail |
Esempio
$ 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 informazioni sull’endpoint /config/tls/csr.pem si trovano nella documentazione dell’API.
Il certificato può essere sostituito come segue.
Opzioni richieste
Opzione |
Descrizione |
---|---|
|
Impostare il certificato per l’interfaccia NetHSM TLS |
Argomenti
Argomento |
Descrizione |
---|---|
|
File di certificato |
Esempio
nitropy nethsm --host $NETHSM_HOST set-certificate --api /tmp/nethsm-certificate
Le informazioni sull’endpoint /config/tls/csr.pem si trovano nella documentazione dell’API.
Rete¶
La configurazione di rete definisce le impostazioni utilizzate per la porta di rete.
Nota
Queste impostazioni non configurano la porta di rete BMC.
La configurazione di rete può essere recuperata come segue.
Opzioni richieste
Opzione |
Descrizione |
---|---|
|
Interrogare la configurazione di rete |
Esempio
$ 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
Le informazioni sull’endpoint /config/network si trovano nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_config-network>`__.
Impostare la configurazione di rete come segue.
Nota
Il NetHSM non supporta il protocollo DHCP (Dynamic Host Configuration Protocol).
Nota
Il NetHSM non supporta il protocollo IPv6 (Internet Protocol version 6).
Opzioni richieste
Opzione |
Descrizione |
---|---|
|
Il nuovo indirizzo IP |
|
La nuova netmask |
|
Il nuovo gateway |
Esempio
$ 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
Le informazioni sull’endpoint /config/network si trovano nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_config-network>`__.
Tempo¶
La configurazione dell’ora imposta l’ora del sistema del software NetHSM. Di solito non è necessario impostare l’ora del sistema, poiché viene impostata durante il provisioning.
La configurazione temporale può essere recuperata come segue.
Opzioni richieste
Opzione |
Descrizione |
---|---|
|
Interrogare l’ora del sistema |
Esempio
$ nitropy nethsm -host $NETHSM_HOST get-config --time
Configuration for NetHSM localhost:8443:
Time: 2022-08-17 11:40:00+00:00
Le informazioni sull’endpoint /config/time si trovano nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_config-time>`__.
Impostare l’ora del NetHSM.
Importante
Assicurarsi di passare l’ora nel fuso orario UTC.
Argomenti
Argomento |
Descrizione |
---|---|
|
L’ora del sistema da impostare (formato: YYYY-MM-DDTHH:MM:SSZ) |
Esempio
$ nitropy nethsm -h $NETHSM_HOST set-time 2022-08-17T11:40:00Z
Updated the system time for NetHSM localhost:8443
Le informazioni sull’endpoint /config/time si trovano nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_config-time>`__.
Metriche¶
The NetHSM logs metrics of system parameters. Please refer to Metrics to learn more about each metric.
Le metriche possono essere recuperate come segue.
Ruolo richiesto
This operation requires an authentication with the Metrics role.
Esempio
$ 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
Le informazioni sull’endpoint /metrics si trovano nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_metrics>`__.
Registrazione¶
Il NetHSM può registrare gli eventi del sistema sulla porta seriale o su un server syslog in rete.
Importante
Per qualsiasi implementazione di produzione, il log di NetHSM deve essere monitorato continuamente per fornire una notifica immediata di qualsiasi potenziale problema di sicurezza.
La configurazione del server syslog può essere recuperata come segue.
Opzioni richieste
Opzione |
Descrizione |
---|---|
|
Interrogare la configurazione della registrazione |
Esempio
$ nitropy nethsm -h $NETHSM_HOST get-config --logging
Logging:
IP address: 0.0.0.0
Port: 514
Log level: info
Le informazioni sull’endpoint /config/logging si trovano nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_config-logging>`__.
La configurazione del server syslog può essere impostata come segue.
Opzioni richieste
Opzione |
Descrizione |
---|---|
|
L’indirizzo IP della nuova destinazione di registrazione |
|
La porta della nuova destinazione di registrazione |
|
Il nuovo livello di log |
Esempio
$ 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
Le informazioni sull’endpoint /config/logging si trovano nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_config-logging>`__.
La console seriale funziona fin dall’inizio dell’hardware NetHSM. Include gli eventi del firmware NetHSM e del software NetHSM.
Le impostazioni di connessione della console seriale sono le seguenti.
Impostazione |
Valore |
---|---|
Velocità di trasmissione |
115200 |
Bit di dati |
8 |
Bit di stop |
1 |
Parità |
Nessuno |
Controllo del flusso |
Nessuno |
Backup¶
I dati utente di NetHSM possono essere salvati in un file di backup. Questo file di backup contiene tutti i dati utente, in particolare Configuration Store, Authentication Store, Domain Key Store e Key Store.
Importante
Un software di sistema NetHSM in modalità Unattended Boot richiederà la Unlock Passphrase se ripristinato su un hardware NetHSM diverso. Per saperne di più, consultare il capitolo Unlock Passphrase.
Importante
Un NetHSM in modalità Unattended Boot sarà nella stessa modalità dopo un ripristino.
Prima di avviare un backup è necessario impostare la Passphrase di backup. La Passphrase di backup viene utilizzata per crittografare i dati del file di backup.
Avvertimento
La passphrase di backup non può essere ripristinata senza conoscere il valore attuale. Se la passphrase di backup viene persa, non è possibile reimpostarla su un nuovo valore né ripristinare i backup creati.
La passphrase di backup può essere impostata come segue.
Opzioni opzionali
Opzione |
Descrizione |
---|---|
|
La nuova passphrase di backup |
|
La passphrase di backup corrente (o una stringa vuota se non impostata) |
|
Non chiedere conferma prima di modificare la passphrase. |
Esempio
$ 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
Le informazioni sull’endpoint /config/backup-passphrase si trovano nella documentazione dell’API.
Il backup può essere eseguito come segue.
Ruolo richiesto
This operation requires an authentication with the Backup role.
Argomenti
Argomento |
Descrizione |
---|---|
|
File di backup |
Esempio
$ nitropy nethsm -h $NETHSM_HOST backup /tmp/nethsm-backup
Backup for localhost:8443 written to /tmp/backup
Le informazioni sull’endpoint /system/backup si trovano nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_system-backup>`__.
Ripristinare¶
Il NetHSM può essere ripristinato da un file di backup.
Se il NetHSM è Unprovisioned ripristinerà tutti i dati utente compresa la configurazione del sistema e il riavvio. Pertanto, il sistema potrebbe avere in seguito impostazioni di rete, certificato TLS e passphrase di sblocco diversi.
Se il NetHSM è Provisioned ripristinerà gli utenti e le chiavi utente ma non la configurazione del sistema. In questo caso, tutti gli utenti e le chiavi utente precedentemente esistenti verranno cancellati. Il NetHSM termina in uno stato Operativo.
Il ripristino può essere applicato come segue.
Opzioni opzionali
Opzione |
Descrizione |
---|---|
|
La Passphrase di backup |
|
L’ora del sistema da impostare (formato: |
Importante
Assicurarsi che l’ora del computer locale sia impostata correttamente. Per impostare un’ora diversa, è necessario fornirla manualmente.
Argomenti
Argomento |
Descrizione |
|
---|---|---|
|
Esempio
$ nitropy nethsm -h $NETHSM_HOST restore /tmp/nethsm-backup
Backup passphrase:
Backup restored on NetHSM localhost:8443
Le informazioni sull’endpoint /system/restore si trovano nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_system-restore>`__.
Replication¶
NetHSM is stateless, so that several NetHSM devices can be used to process extremely high throughput and provide high availability. The PKCS#11 module supports round-robin schedule for a cluster of NetHSM instances. Multiple instances of NetHSM can be synchronized via encrypted backups. For this a separate system downloads and uploads backup files between the instances. The synchronization can be easily scripted by using pynitrokey as shown in this example. This separate system doesn’t have access to the backed up data in clear text because the backup files are encrypted twice. The separate system is in possession of the backup passphrase only but not of the Domain Key resp. Unlock Passphrase which is the second layer of encryption. See the system design for further details.
Aggiornamento software¶
Gli aggiornamenti software possono essere installati con un processo in due fasi. Innanzitutto, l’immagine dell’aggiornamento deve essere caricata su un NetHSM Provisioned. Il NetHSM verifica l’autenticità, l’integrità e il numero di versione dell’immagine. Opzionalmente, il NetHSM visualizza le note di rilascio, se presenti.
Avvertimento
L’installazione di un aggiornamento beta può causare una perdita di dati! Le versioni stabili non dovrebbero causare perdite di dati. Tuttavia, si consiglia di creare un backup prima dell’aggiornamento.
Il file di aggiornamento può essere caricato come segue.
Argomenti
Argomento |
Descrizione |
---|---|
|
File di aggiornamento |
Esempio
$ nitropy nethsm --host $NETHSM_HOST update /tmp/nethsm-update.img.bin
Image /tmp/nethsm-update.img.bin uploaded to NetHSM localhost:8443
Le informazioni sull’endpoint /system/update si trovano nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_system-update>`__.
Successivamente, l’aggiornamento può essere applicato o interrotto. Fare riferimento all’opzione desiderata di seguito. Se il NetHSM viene spento prima dell’operazione di «commit», il file di aggiornamento deve essere caricato nuovamente.
Importante
Se il caricamento dell’immagine di aggiornamento fallisce con Error: NetHSM request failed: Bad request -- malformed image
, seguire i passaggi seguenti.
Assicurarsi di avere un file di aggiornamento valido verificando la firma fornita.
Assicurarsi di non avere attivato un livello di log elevato, come
DEBUG
. Consultare il capitolo Logging per saperne di più sulla configurazione del livello di log.Riavviare il dispositivo per liberare la memoria utilizzata.
L’aggiornamento può essere applicato (impegnato) come segue. La migrazione dei dati viene eseguita solo dopo che il NetHSM ha avviato con successo la nuova versione del software di sistema.
Esempio
$ nitropy nethsm --host $NETHSM_HOST commit-update
Update successfully committed on NetHSM localhost:8443
Le informazioni sull’endpoint /system/commit-update si trovano nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_system-commit-update>`__.
L’aggiornamento può essere annullato come segue.
Esempio
$ nitropy nethsm --host $NETHSM_HOST cancel-update
Update successfully cancelled on NetHSM localhost:8443
Le informazioni sull’endpoint /system/cancel-update si trovano nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_system-cancel-update>`__.
Informazioni sul sistema¶
Le informazioni sul sistema, come la versione del firmware, la versione del software e la versione dell’hardware, possono essere recuperate come segue.
Esempio
$ 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
Le informazioni sull’endpoint /system/info si trovano nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/get_system_info>`__.
Riavvio e spegnimento¶
Il NetHSM può essere riavviato e spento, sia da remoto, sia con il pulsante di riavvio e spegnimento sulla parte anteriore dell’hardware del NetHSM.
Il riavvio remoto può essere avviato come segue.
Esempio
$ 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
Le informazioni sull’endpoint /system/reboot si trovano nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_system-reboot>`__.
Lo spegnimento remoto può essere avviato come segue.
Esempio
$ 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
Le informazioni sull’endpoint /system/shutdown si trovano nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_system-shutdown>`__.
Ripristino delle impostazioni di fabbrica¶
Un Provisioned NetHSM può essere riportato alle impostazioni di fabbrica. In questo caso, tutti i dati dell’utente vengono cancellati in modo sicuro e il NetHSM si avvia in uno stato non provisionato. In seguito, si potrebbe voler fornire il NetHSM.
Il ripristino delle impostazioni di fabbrica può essere eseguito come segue.
Esempio
$ 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
Le informazioni sull’endpoint /system/factory-reset si trovano nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/POST_system-factory-reset>`__.
Gestione degli utenti¶
Ruoli¶
Il NetHSM consente di separare i compiti utilizzando diversi ruoli. A ogni account utente configurato sul NetHSM è assegnato uno dei seguenti ruoli.
Ruolo |
Descrizione |
---|---|
Amministratore |
Un account utente con questo ruolo ha accesso a tutte le operazioni fornite da NetHSM, ad eccezione delle operazioni di utilizzo delle chiavi, ossia la firma e la decodifica dei messaggi. |
Operatore |
R-Operatore: Un account utente con questo ruolo ha accesso a tutte le operazioni di utilizzo delle chiavi, a un sottoinsieme di operazioni di gestione delle chiavi in sola lettura e alle operazioni di gestione degli utenti che consentono modifiche solo al proprio account. |
Metriche |
Un account utente con questo ruolo ha accesso solo alle operazioni di lettura delle metriche. |
Backup |
Un account utente con questo ruolo ha accesso solo alle operazioni necessarie per avviare un backup del sistema. |
Vedere Namespaces e Tags per restrizioni di accesso più precise.
Nota
In una versione futura, potrebbero essere introdotti altri ruoli.
Aggiungi utente¶
Aggiungere un account utente al NetHSM. Ogni account utente ha un Ruolo, che deve essere specificato. Consultate il capitolo Ruoli per saperne di più su Ruoli.
Opzionalmente, un utente può essere assegnato a un *Namespace*.
Nota
L’ID utente deve essere alfanumerico. Il NetHSM assegna un ID utente casuale se non viene specificato.
L’account utente può essere aggiunto come segue.
Opzioni richieste
Opzione |
Descrizione |
---|---|
|
Il nome reale del nuovo utente |
|
Lo spazio dei nomi del nuovo utente |
|
Il ruolo del nuovo utente |
|
La passphrase del nuovo utente |
Opzioni opzionali
Opzione |
Descrizione |
---|---|
|
L’ID utente del nuovo utente |
Esempio
$ 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
Per impostazione predefinita, il Namespace viene ereditato dall’utente che aggiunge il nuovo utente. Solo gli utenti che non hanno un Namespace possono scegliere un Namespace diverso per i nuovi utenti. Il Namespace viene utilizzato come prefisso per il nome dell’utente, ad esempio namespace~user. Pertanto, lo stesso nome utente può essere utilizzato in diversi Namespace.
Elimina utente¶
Eliminare un account utente dal NetHSM.
Avvertimento
La cancellazione è permanente e non può essere ripristinata.
L’account utente può essere eliminato come segue.
Argomenti
Argomento |
Descrizione |
---|---|
|
L’ID utente dell’utente. |
Esempio
$ nitropy nethsm --host $NETHSM_HOST delete-user operator1
User operator1 deleted on NetHSM localhost:8443
Le informazioni sull’endpoint /users/{UserID} si trovano nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/DELETE_users-UserID>`__.
Elenco utenti¶
Elencare gli utenti del NetHSM.
L’elenco può essere recuperato come segue.
Opzioni opzionali
Opzione |
Descrizione |
---|---|
|
Interrogare il nome reale e il ruolo dell’utente |
Esempio
$ nitropy nethsm --host $NETHSM_HOST list-users
Users on NetHSM localhost:8843:
User ID Real name Role
--------- ----------------- -------------
operator1 Nitrokey Operator Operator
admin admin Administrator
Le informazioni sull’endpoint /users si trovano nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_users>`__.
Le informazioni sull’endpoint /users/{UserID} si trovano nella documentazione dell’API <https://nethsmdemo.nitrokey.com/api_docs/index.html#/default/GET_users-UserID>`__.
Gli utenti di un Namespace possono vedere solo gli utenti dello stesso Namespace.
Passphrase utente¶
È possibile reimpostare la passphrase di un account utente. La passphrase viene impostata inizialmente durante l’aggiunta di un account utente.
Nota
Le passphrase devono essere composte da 10 e 200 caratteri.
La passphrase utente può essere impostata come segue.
Opzioni richieste
Opzione |
Descrizione |
---|---|
|
L’ID utente dell’utente |
|
La nuova passphrase dell’utente |
Esempio
$ nitropy nethsm --host $NETHSM_HOST set-passphrase --user-id operator1
Passphrase:
Repeat for confirmation:
Updated the passphrase for user operator1 on NetHSM localhost:8443
Le informazioni sull’endpoint /users/{UserID}/passphrase si trovano nella documentazione dell’API.
Spazi dei nomi¶
I Namespace sono stati introdotti nella versione 2.0 del software. In caso di migrazione da una versione precedente del software, tutti gli utenti e le chiavi esistenti saranno privi di un Namespace.
Analogamente al concetto di partizione, NetHSM supporta il più flessibile Namespaces che raggruppa chiavi, amministratori e utenti di un NetHSM in sottoinsiemi separati. Gli utenti possono vedere e usare solo chiavi dello stesso Namespace e possono vedere solo utenti dello stesso Namespace. Non è possibile vedere utenti e vedere e utilizzare chiavi di altri Namespace. Quando un nuovo utente viene creato, eredita il Namespace dell’utente che lo ha creato. La capacità di memoria disponibile è condivisa tra tutti i Namespace.
Gli utenti con il ruolo Administrator ` <administration#roles>`__ sono anche chiamati R-Administrator se non sono in un Namespace, o N-Administrator se sono in un Namespace.
Agli utenti di R-Administrator si applicano regole speciali: Possono impostare il Namespace per i nuovi utenti, elencare tutti gli utenti e interrogare il Namespace di un utente. Inoltre, la configurazione di NetHSM è accessibile solo agli utenti R-Administrator. Gli amministratori R non possono vedere le chiavi di un Namespace.
Per poter generare chiavi e utenti in un Namespace, questo deve essere creato da un utente R-Administrator. Una volta creato il Namespace, gli utenti R-Administrator non possono più creare, cancellare o modificare utenti in quel Namespace. Questo permette di proteggere le chiavi dei Namespace dall’accesso di R-Administrator (anche indirettamente, aggiungendo un nuovo utente per conto di quest’ultimo o resettando le credenziali dell’utente o dell’amministratore esistente). Pertanto, è necessario creare un utente N-Administrator per il Namespace prima di creare il Namespace. Gli utenti R-Administrator possono anche cancellare un Namespace con tutte le chiavi contenute.
Elenco degli spazi dei nomi¶
Elencare i Namespace del NetHSM.
L’elenco può essere recuperato come segue.
Esempio
$ nitropy nethsm --host $NETHSM_HOST list-namespaces
Namespaces on NetHSM localhost:8843:
- ns1
- ns2
Le informazioni sull’endpoint /namespaces si trovano nella documentazione dell’API.
Aggiungi spazio dei nomi¶
Aggiungere uno spazio dei nomi al NetHSM.
Gli utenti R-Administrator possono creare nuovi account nel Namespace già prima della sua creazione. Dopo la creazione, solo gli utenti N-Administrator possono gestire gli utenti nel Namespace. La creazione e l’utilizzo di chiavi nel Namespace sono possibili solo dopo che questo è stato aggiunto.
Nota
L’ID del Namespace deve essere alfanumerico. Il NetHSM assegna un ID utente casuale se non viene specificato.
Uno spazio dei nomi può essere aggiunto come segue.
Argomenti
Argomento |
Descrizione |
|
---|---|---|
|
Esempio
$ nitropy nethsm --host $NETHSM_HOST add-namespace ns1
Namespace ns1 added to NetHSM localhost:8443
Le informazioni sull’endpoint /namespaces/{NamespaceID} si trovano nella documentazione dell’API.
Cancellare lo spazio dei nomi¶
Eliminare uno spazio dei nomi dal NetHSM.
L’eliminazione di un Namespace cancella anche tutte le chiavi di quel Namespace. Gli altri utenti del Namespace non potranno aggiungere chiavi fino a quando il Namespace non sarà stato nuovamente aggiunto.
Uno spazio dei nomi può essere eliminato come segue.
Argomenti
Argomento |
Descrizione |
---|---|
NAMESPACE |
Lo spazio dei nomi da eliminare. |
Esempio
$ nitropy nethsm --host $NETHSM_HOST delete-namespace ns1
Namespace ns1 deleted on NetHSM localhost:8443
Le informazioni sull’endpoint /namespaces/{NamespaceID} si trovano nella documentazione dell’API.