Production Image

Gamybinis atvaizdas skirtas gamybinei aplinkai, kuriai keliami aukšti saugumo reikalavimai. Jam reikia išorinės etcd raktų ir verčių saugyklos, kuri prijungiama šifruotu ryšiu. NetHSM procesas gali būti vykdomas naudojant aparatine įranga pagrįstą atskyrimą (KVM) ir konkretaus įrenginio šifravimą. Atvaizdas platinamas kaip OCI atvaizdas ir gali būti paleistas vietoje naudojant suderinamą vykdomąją programą, pavyzdžiui, „Docker“ ir „Podman“.

Lyginant su NetHSM aparatine įranga, programinės įrangos konteinerio REST API neįgyvendinamos šios funkcijos:

  • Network configuration

  • Factory reset

  • Reboot

  • Software update

„NetHSM“ gamybos konteineris yra tik mokantiems klientams skirtas produktas, kurį galima įsigyti čia. Atvaizdą galima gauti iš „Nitrokey NetHSM“ registro, naudojantis po pirkimo pateiktais prisijungimo duomenimis.

Įspėjimas

NetHSM programinės įrangos konteinerio saugumas labai priklauso nuo platformos saugumo. Pažeista platforma gali lengvai pakenkti jos vykdomam NetHSM programinės įrangos konteineriui. Be to, TRNG nėra, todėl „NetHSM“ naudojama ir teikiama entropija priklauso nuo platformos entropijos.

Žymėjimo politika

Atvaizdai saugykloje žymimi „Git“ įsipareigojimo hash ir išleidimo versija. Naujausias atvaizdas pažymėtas latest.

Modes of Operation

Atvaizdą galima paleisti dviem režimais, t. y. „Unix“ proceso arba unikernel.

„Unix“ procesų režimu NetHSM paleidžiamas kaip operacinės sistemos procesas.

Unikernel režimu NetHSM paleidžiama kaip svečias virtualioje KVM virtualioje mašinoje ir stipriai atskiriama nuo pagrindinės operacinės sistemos. Šis režimas galimas tik „Linux“ sistemoje ir reikalauja prieigos prie /dev/tun ir /dev/kvm įrenginių mazgų bei NET_ADMIN galimybės.

Svarbu

Saugumo sumetimais konteinerį paleiskite unikernel režimu.

Režimą galima nustatyti aplinkos kintamuoju MODE (žr. kitą skyrių Konfigūracija).

Konfigūracija

The container can be configured with the following environment variables.

Aplinkos kintamasis

Aprašymas

DEBUG_LOG

Įjungiamas išplėstinis NetHSM registravimas.

UNLOCKPW

Nustatyta atrakinimo slaptažodžių frazė automatiškai atrakina konteinerį paleidimo metu.

MODE

Režimas gali būti unix arba unikernel, numatytoji reikšmė yra unix.

ETCD_HOST

Kompiuterio, kuriame veikia etcd paslauga, URL/IP adresas.

ETCD_PORT

Prievadas, per kurį veikia etcd paslauga, numatytasis nustatymas yra 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.

Konteinerio paleidimo paslaptis, pavyzdžiui, sertifikatus ir privačius raktus, reikia nustatyti naudojant „Docker“ arba „Podman“ paslapčių funkciją.

Slaptasis kintamasis

Aprašymas

ca_cert

CA sertifikatas, kuriuo pasirašytas kliento sertifikatas ir serverio sertifikatas.

client_cert

Kliento sertifikatas, skirtas „NetHSM“ proceso autentiškumo patvirtinimui su raktų reikšmių saugykla.

client_key

Kliento raktas, skirtas „NetHSM“ proceso autentiškumui patvirtinti naudojant raktų ir reikšmių saugyklą.

server_cert

Serverio sertifikatas, skirtas raktų reikšmių saugyklos API.

server_key

Serverio raktas, skirtas raktų ir reikšmių saugyklos API.

device_key

NetHSM proceso įrenginio raktas. Daugiau informacijos apie įrenginio raktą rasite skyriuje Terminologija ir sutartiniai ženklai sistemos projekte.

Naudojimas

Gamybos konteineris palaiko du veikimo režimus. Tolesniuose skyriuose aprašoma, kaip paleisti konteinerį naudojant pateiktus komponavimo failus arba komandą _run_.

Unix Mode

Galite gauti pateiktą kompaktinį failą čia. Įsitikinkite, kad turite reikiamų paslapčių failų, paminėtų compose faile.

Jei norite paleisti konteinerį be compose failo, turite patys pateikti išorinį etcd. Čia rasite rekomenduojamą etcd konteinerio atvaizdą. Būtinai perduokite konfigūracijos parinktis, kaip aprašyta skyriuje Konfigūracija.

Konteineris gali būti vykdomas taip.

$ docker run -ti --rm -p 8443:8443 registry.git.nitrokey.com/distribution/nethsm:latest

Tai paleis NetHSM kaip „Unix“ procesą konteinerio viduje ir atskleis REST API per HTTPS protokolą prievado 8443 adresu.

Svarbu

Konteineryje naudojamas savarankiškai pasirašytas TLS sertifikatas. Norėdami užmegzti ryšį, įsitikinkite, kad naudojate tinkamus ryšio nustatymus. Norėdami sužinoti daugiau, žr. skyrių NetHSM įvadas.

Unikernel režimas

Galite gauti pateiktą kompaktinį failą čia. Įsitikinkite, kad turite reikiamų paslapčių failų, minimų compose faile.

Jei norite paleisti konteinerį be compose failo, turite patys pateikti išorinį etcd. Čia rasite rekomenduojamą etcd konteinerio atvaizdą. Būtinai perduokite konfigūracijos parinktis, kaip aprašyta skyriuje Konfigūracija.

Konteineris gali būti vykdomas taip.

$ 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

Tai leis paleisti NetHSM kaip unikernelį KVM virtualioje mašinoje. Konteineris atskleis REST API per HTTPS protokolą sąsajoje tap200 su IP adresu 192.168.1.100 ir prievadu 8443.

Svarbu

Konteineryje naudojamas savarankiškai pasirašytas TLS sertifikatas. Norėdami užmegzti ryšį, įsitikinkite, kad naudojate tinkamus ryšio nustatymus. Norėdami sužinoti daugiau, žr. skyrių NetHSM įvadas.