Production Image¶
Produkčný obraz je určený pre produkčné prostredia s vysokými nárokmi na bezpečnosť. Vyžaduje externé úložisko kľúčov etcd, ktoré je pripojené prostredníctvom šifrovaného spojenia. Proces NetHSM sa môže vykonávať s hardvérovým oddelením (KVM) a šifrovaním špecifickým pre zariadenie. Obraz je distribuovaný ako obraz OCI a možno ho spustiť lokálne pomocou kompatibilného vykonávacieho nástroja, napríklad Docker a 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
Výrobný kontajner NetHSM je produkt určený len pre platiacich zákazníkov a možno ho zakúpiť na adrese tu. Obraz je možné získať z registra Nitrokey NetHSM pomocou prihlasovacích údajov poskytnutých po zakúpení.
Varovanie
Bezpečnosť softvérového kontajnera NetHSM výrazne závisí od bezpečnosti platformy. Kompromitovaná platforma by mohla ľahko ohroziť softvérový kontajner NetHSM, ktorý vykonáva. Okrem toho TRNG neexistuje, takže entropia používaná a poskytovaná NetHSM závisí od entropie platformy.
Zásady označovania¶
Obrázky v úložisku sú označené hashom revízie systému Git a verziou vydania. Najnovší obraz je označený latest
.
Modes of Operation¶
Obraz je možné spustiť v dvoch režimoch prevádzky, t. j. ako unixový proces alebo unikernel.
V režime unixového procesu je NetHSM spustený ako proces nad operačným systémom.
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žim možno nastaviť pomocou premennej prostredia MODE
(pozri nasledujúcu kapitolu Konfigurácia).
Konfigurácia¶
The container can be configured with the following environment variables.
Premenná prostredia |
Popis |
---|---|
|
Povolí rozšírené protokolovanie pre NetHSM. |
|
Nastavená odomykacia fráza automaticky odomkne kontajner počas štartu. |
|
Režim akceptuje hodnoty unix alebo unikernel, predvolené nastavenie je unix. |
|
Adresa URL/IP hostiteľa, na ktorom je spustená služba etcd. |
|
Port, na ktorom beží služba etcd, predvolene 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. |
Tajné údaje kontajnera, ako sú certifikáty a súkromné kľúče, je potrebné nastaviť pomocou funkcie Secrets aplikácie Docker alebo Podman.
Tajná premenná |
Popis |
---|---|
|
certifikát certifikačnej autority, ktorá podpísala klientsky certifikát a certifikát servera. |
|
Klientsky certifikát na overenie procesu NetHSM s úložiskom hodnôt kľúčov. |
|
Klientsky kľúč na overenie procesu NetHSM pomocou úložiska kľúč-hodnota. |
|
Certifikát servera pre API úložiska hodnôt kľúčov. |
|
Kľúč servera pre API úložiska kľúč-hodnota. |
|
Kľúč zariadenia procesu NetHSM. Viac informácií o kľúči zariadenia nájdete v kapitole Terminológia a konvencie v návrhu systému. |
Používanie¶
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¶
Poskytnutý súbor môžete získať na adrese tu. Uistite sa, že máte k dispozícii potrebné súbory pre tajomstvá, ktoré sú uvedené v súbore compose.
Ak chcete spustiť kontajner bez súboru compose, musíte sami poskytnúť externý etcd. Tu nájdete odporúčaný obraz kontajnera etcd. Uistite sa, že ste odovzdali konfiguračné možnosti, ako je popísané v kapitole Konfigurácia.
Kontajner možno vykonať takto.
$ 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
Spustí sa NetHSM ako unixový proces v kontajneri a sprístupní sa rozhranie REST API na porte 8443 prostredníctvom protokolu HTTPS.
Dôležité
Kontajner používa certifikát TLS s vlastným podpisom. Uistite sa, že na vytvorenie spojenia používate správne nastavenia pripojenia. Viac informácií nájdete v kapitole Úvod do NetHSM.
Režim Unikernel¶
Poskytnutý súbor môžete získať na adrese tu. Uistite sa, že máte k dispozícii potrebné súbory pre tajomstvá, ktoré sú uvedené v súbore compose.
Ak chcete spustiť kontajner bez súboru compose, musíte sami poskytnúť externý etcd. Tu nájdete odporúčaný obraz kontajnera etcd. Uistite sa, že ste odovzdali konfiguračné možnosti, ako je popísané v kapitole Konfigurácia.
Kontajner možno vykonať takto.
$ 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
Tým sa NetHSM spustí ako unikernel vo virtuálnom stroji KVM. Kontajner sprístupní rozhranie REST API prostredníctvom protokolu HTTPS na rozhraní tap200 s IP adresou 192.168.1.100 a portom 8443.
Dôležité
Kontajner používa certifikát TLS s vlastným podpisom. Uistite sa, že na vytvorenie spojenia používate správne nastavenia pripojenia. Viac informácií nájdete v kapitole Úvod do NetHSM.