Production Image¶
Produkcijska slika je namenjena produkcijskim okoljem z visokimi varnostnimi zahtevami. Zahteva zunanjo shrambo ključev in vrednosti etcd, ki je povezana prek šifrirane povezave. Postopek NetHSM se lahko izvaja z ločitvijo na podlagi strojne opreme (KVM) in šifriranjem za posamezno napravo. Slika je distribuirana kot slika OCI in jo je mogoče zagnati lokalno z združljivim izvajalnikom, kot sta Docker in 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
Produkcijska posoda NetHSM je izdelek samo za plačljive stranke in ga lahko kupite na tukaj. Sliko lahko pridobite iz Registra Nitrokey NetHSM z uporabo poverilnic, ki jih dobite po nakupu.
Opozorilo
Varnost vsebnika programske opreme NetHSM je močno odvisna od varnosti platforme. Ogrožena platforma lahko zlahka ogrozi vsebnik programske opreme NetHSM, ki ga izvaja. Poleg tega TRNG ne obstaja, zato je entropija, ki jo uporablja in zagotavlja NetHSM, odvisna od entropije platforme.
Politika označevanja¶
Slike v skladišču so označene z hashem objave v sistemu Git in različico izdaje. Najnovejša slika je označena s latest
.
Modes of Operation¶
Sliko je mogoče zagnati v dveh načinih delovanja, in sicer kot proces Unix ali unikernel.
V Unixovem procesnem načinu se NetHSM izvaja kot proces na vrhu operacijskega sistema.
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.
Način lahko nastavite z okoljsko spremenljivko MODE
(glejte naslednje poglavje Konfiguracija).
Konfiguracija¶
The container can be configured with the following environment variables.
Spremenljivka okolja |
Opis |
---|---|
|
Omogoča razširjeno beleženje za NetHSM. |
|
Nastavljena geslo za odklepanje samodejno odklene vsebnik med zagonom. |
|
Način sprejema vrednosti unix ali unikernel, privzeta vrednost je unix. |
|
Naslov URL/IP gostitelja, v katerem je nameščena storitev etcd. |
|
Vrata, na katerih teče storitev etcd, privzeta vrednost je 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. |
Skrivnosti za izvajanje vsebnika, kot so certifikati in zasebni ključi, je treba nastaviti s funkcijo skrivnosti v programu Docker ali Podman.
Skrivna spremenljivka |
Opis |
---|---|
|
potrdilo CA, ki je podpisalo potrdilo odjemalca in strežnika. |
|
Potrdilo odjemalca za preverjanje pristnosti procesa NetHSM s shrambo vrednosti ključa. |
|
Odjemalčev ključ za preverjanje pristnosti procesa NetHSM s shrambo ključ-vrednost. |
|
Strežniško potrdilo za API shrambe vrednosti ključa. |
|
Strežniški ključ za API shrambe ključ-vrednost. |
|
Ključ naprave procesa NetHSM. Če želite izvedeti več o ključu naprave, glejte poglavje Terminologija in konvencije v zasnovi sistema. |
Uporaba¶
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¶
Zagotovljeno datoteko za sestavljanje lahko dobite tukaj. Prepričajte se, da imate na voljo potrebne datoteke za skrivnosti, navedene v datoteki compose.
Če želite vsebnik zagnati brez datoteke compose, morate sami zagotoviti zunanji etcd. Tukaj najdete priporočeno sliko vsebnika za etcd. Poskrbite, da boste posredovali konfiguracijske možnosti, kot je opisano v poglavju Konfiguracija.
Posodo lahko izvedete na naslednji način.
$ 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
To bo zagnalo NetHSM kot proces Unix znotraj vsebnika in izpostavilo API REST na vratih 8443 prek protokola HTTPS.
Pomembno
Posoda uporablja samopodpisano potrdilo TLS. Poskrbite, da boste za vzpostavitev povezave uporabili pravilne nastavitve povezave. Če želite izvedeti več, si oglejte poglavje Uvod v NetHSM.
Način Unikernel¶
Zagotovljeno datoteko za sestavljanje lahko dobite tukaj. Prepričajte se, da imate na voljo potrebne datoteke za skrivnosti, navedene v datoteki compose.
Če želite vsebnik zagnati brez datoteke compose, morate sami zagotoviti zunanji etcd. Tukaj najdete priporočeno sliko vsebnika za etcd. Poskrbite, da boste posredovali konfiguracijske možnosti, kot je opisano v poglavju Konfiguracija.
Posodo lahko izvedete na naslednji način.
$ 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
To bo zagnalo NetHSM kot unikernel znotraj virtualnega stroja KVM. Kontejner bo izpostavil API REST prek protokola HTTPS na vmesniku tap200 z naslovom IP 192.168.1.100 in vratom 8443.
Pomembno
Posoda uporablja samopodpisano potrdilo TLS. Poskrbite, da boste za vzpostavitev povezave uporabili pravilne nastavitve povezave. Če želite izvedeti več, si oglejte poglavje Uvod v NetHSM.