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 the NET_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

DEBUG_LOG

Povolí rozšírené protokolovanie pre NetHSM.

UNLOCKPW

Nastavená odomykacia fráza automaticky odomkne kontajner počas štartu.

MODE

Režim akceptuje hodnoty unix alebo unikernel, predvolené nastavenie je unix.

ETCD_HOST

Adresa URL/IP hostiteľa, na ktorom je spustená služba etcd.

ETCD_PORT

Port, na ktorom beží služba etcd, predvolene 2379.

ETCD_CA_CERT

The path to the certificate of the CA (Certificate Authority) which signed the client certificate.

ETCD_CLIENT_CERT

The path to the certificate for the client authentication.

ETCD_CLIENT_KEY

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

ca_cert

certifikát certifikačnej autority, ktorá podpísala klientsky certifikát a certifikát servera.

etcd_client_cert

Klientsky certifikát na overenie procesu NetHSM s úložiskom hodnôt kľúčov.

etcd_client_key

Klientsky kľúč na overenie procesu NetHSM pomocou úložiska kľúč-hodnota.

etcd_server_cert

Certifikát servera pre API úložiska hodnôt kľúčov.

etcd_server_key

Kľúč servera pre API úložiska kľúč-hodnota.

device_key

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

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

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.