Production Image¶
Tootmiskujutis on ette nähtud kõrgete turvanõuetega tootmiskeskkondade jaoks. See nõuab välist etcd võtmeväärtuste salvestust, mis on ühendatud krüpteeritud ühenduse kaudu. NetHSM-protsessi saab teostada riistvarapõhise eraldamise (KVM) ja seadmespetsiifilise krüpteerimisega. Image on levitatud OCI image’ina ja seda saab käivitada lokaalselt ühilduva käivitajaga, nagu Docker ja Podman.
Compared to the NetHSM hardware the following functions are not implemented at the software container’s REST API:
Network configuration
Factory reset
Reboot
Software update
NetHSM tootmiskonteiner on toode ainult maksvatele klientidele ja seda saab osta siit. Imago on võimalik saada Nitrokey NetHSM registrist, kasutades pärast ostu sooritamist antud volitusi.
Hoiatus
NetHSM tarkvara konteineri turvalisus sõltub suuresti platvormi turvalisusest. Kompromiteeritud platvorm võib kergesti ohustada NetHSMi tarkvarakonteinerit, mida ta täidab. Lisaks sellele ei ole TRNG olemas, nii et NetHSMi kasutatav ja pakutav entroopia sõltub platvormi entroopiast.
Märgistamise poliitika¶
Repositooriumis olevad pildid on märgistatud Git-kommitatsiooni hashiga ja väljaande versiooniga. Viimane pilt on märgistatud latest
.
Modes of Operation¶
Kujutist saab käivitada kahes töörežiimis, st Unixi protsessina või unikernelina.
Unixi protsessirežiim käivitab NetHSMi protsessina operatsioonisüsteemi peal.
The unikernel mode runs NetHSM as a guest in a KVM based virtual machine and provides strong separation from the host operating system. This mode is only available on Linux and requires access to the
/dev/tun
and/dev/kvm
device nodes and theNET_ADMIN
capability. For security reasons we recommend the unikernel mode.
Režiimi saab määrata keskkonnamuutujaga MODE
(vt järgmine peatükk Configuration).
Konfiguratsioon¶
The container can be configured with the following environment variables.
Keskkonna muutuja |
Kirjeldus |
---|---|
„DEBUG_LOG |
Võimaldab NetHSMi laiendatud logimise. |
|
Seadistatud avamisfraas avab konteineri automaatselt käivitamisel. |
|
Režiim aktsepteerib väärtusi unix või unikernel, vaikimisi unix. |
|
URL/IP-aadress, kus etcd-teenus töötab. |
|
Port, mille kaudu etcd teenus töötab, vaikimisi on „2379“. |
|
The path to the certificate of the CA (Certificate Authority) which signed the client certificate. |
|
The path to the certificate for the client authentication. |
|
The path to the secret key for the client authentication. |
Konteineri tööaja saladused, näiteks sertifikaadid ja privaatvõtmed, tuleb määrata Dockeri või Podmani saladuste funktsiooniga.
Salajane muutuja |
Kirjeldus |
---|---|
|
CA-sertifikaat, mis on allkirjastanud kliendi sertifikaadi ja serveri sertifikaadi. |
|
Kliendisertifikaat NetHSM-protsessi autentimiseks võtmeväärtuste hoidla abil. |
|
Kliendi võti NetHSM-protsessi autentimiseks võtmeväärtuste salvestajaga. |
|
Võtmeväärtuste poe API serveri sertifikaat. |
|
Võtmeväärtuste poe API serveri võti. |
„device_key |
NetHSM-protsessi seadme võti. Lisateavet seadme võtme kohta leiate peatükist Terminoloogia ja konventsioonid süsteemidisainis. |
Kasutamine¶
The production container supports two modes of operation. The following chapters describe how to run the container with the provided compose files or with the run command.
Unix Mode¶
Salajane muutuja
Konteineri käivitamiseks ilma compose-failita peate ise esitama välise etcd. Siit leiate etcd jaoks soovitatud konteineri kujutise. Veenduge, et edastate konfiguratsioonivalikud, nagu on kirjeldatud peatükis Configuration.
Konteinerit saab täita järgmiselt.
$ docker run -ti --rm -p 8443:8443 registry.git.nitrokey.com/distribution/nethsm:latest
$ podman run -ti --rm -p 8443:8443 registry.git.nitrokey.com/distribution/nethsm:latest
See käivitab NetHSMi kui Unixi protsessi konteineri sees ja avab REST API portis 8443 HTTPS-protokolli kaudu.
Tähtis
Konteiner kasutab ise allkirjastatud TLS-sertifikaati. Veenduge, et ühenduse loomiseks kasutate õigeid ühendussätteid. Lisateavet leiate peatükist NetHSMi tutvustus.
Unikerneli režiim¶
Saate etteantud kompositsioonifaili siit. Veenduge, et teil on olemas vajalikud failid saladuste jaoks, mida on mainitud compose-failis.
Konteineri käivitamiseks ilma compose-failita peate ise esitama välise etcd. Siit leiate etcd jaoks soovitatud konteineri kujutise. Veenduge, et edastate konfiguratsioonivalikud, nagu on kirjeldatud peatükis Configuration.
Konteinerit saab täita järgmiselt.
$ docker run -ti --rm -p 8443:8443 --device /dev/net/tun --device /dev/kvm --cap-add=NET_ADMIN -e "MODE=unikernel" registry.git.nitrokey.com/distribution/nethsm:latest
$ podman run -ti --rm -p 8443:8443 --device /dev/net/tun --device /dev/kvm --cap-add=NET_ADMIN -e "MODE=unikernel" registry.git.nitrokey.com/distribution/nethsm:latest
See käivitab NetHSMi kui unikerneli KVM-i virtuaalmasina sees. Konteiner avab REST API HTTPS-protokolli kaudu liidesel tap200 IP-aadressiga 192.168.1.100 ja pordiga 8443.
Tähtis
Konteiner kasutab ise allkirjastatud TLS-sertifikaati. Veenduge, et ühenduse loomiseks kasutate õigeid ühendussätteid. Lisateavet leiate peatükist NetHSMi tutvustus.