Production Image#

Ražošanas tēls ir paredzēts ražošanas vidēm ar augstām drošības prasībām. Tam nepieciešams ārējs etcd atslēgu-vērtību krātuve, kas ir savienota ar šifrētu savienojumu. NetHSM procesu var izpildīt ar aparatūras atdalīšanu (KVM) un ierīces specifisku šifrēšanu. Attēlu izplata kā OCI attēlu, un to var palaist lokāli ar saderīgu izpildītāju, piemēram, Docker un Podman.

Salīdzinot ar NetHSM aparatūru, programmatūras konteinera REST API nav īstenotas šādas funkcijas:

  • Network configuration

  • Rūpnīcas atiestatīšana

  • restartēt

  • Programmatūras atjaunināšana

NetHSM ražošanas konteiners ir produkts tikai maksājošiem klientiem, un to var iegādāties šeit. Attēlu var iegūt no Nitrokey NetHSM reģistra, izmantojot pēc iegādes norādītos akreditācijas datus.

Brīdinājums

NetHSM programmatūras konteinera drošība ir ļoti atkarīga no platformas drošības. Kompromitēta platforma var viegli apdraudēt NetHSM programmatūras konteineru, ko tā izpilda. Turklāt TRNG nepastāv, tāpēc NetHSM izmantotā un nodrošinātā entropija ir atkarīga no platformas entropijas.

Marķēšanas politika#

Repozitorijā esošajiem attēliem tiek pievienotas birkas ar Git kopiju hash un izdevuma versiju. Jaunākais attēls ir atzīmēts ar latest.

Modes of Operation#

Attēlu var palaist divos darbības režīmos, t.i., Unix process vai unikernel.

Unix procesa režīmā NetHSM darbojas kā process virs operētājsistēmas.

Unikernel režīmā NetHSM darbojas kā viesis virtuālajā mašīnā, kas balstīta uz KVM, un nodrošina spēcīgu atdalīšanu no uzņēmējas operētājsistēmas. Šis režīms ir pieejams tikai Linux operētājsistēmā, un tam nepieciešama piekļuve /dev/tun un /dev/kvm ierīču mezgliem un NET_ADMIN iespējām.

Svarīgi

Drošības nolūkos izvēlieties palaist konteineru unikernel režīmā.

Režīmu var iestatīt ar vides mainīgo MODE (skat. nākamo nodaļu Konfigurācija).

Konfigurācija#

The container can be configured with the following environment variables.

Vides mainīgais

Apraksts

Ipsec (tikai Linux)

Iespējo paplašinātu reģistrēšanu NetHSM.

UNLOCKPW

Iestatīta atbloķēšanas parole automātiski atbloķē konteineru palaišanas laikā.

MODE

Režīmam var piešķirt vērtības unix vai unikernel, noklusējuma vērtība ir unix.

ETCD_HOST

URL/IP adrese, kurā darbojas etcd pakalpojums.

ETCD_PORT

Osta, kurā darbojas etcd pakalpojums, noklusējuma iestatījums ir 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.

Konteinera darbības laika noslēpumi, piemēram, sertifikāti un privātās atslēgas, ir jāiestata, izmantojot Docker vai Podman slepenības funkciju.

Osta, kurā darbojas etcd pakalpojums, noklusējuma iestatījums ir 2379.

Apraksts

ca_cert

CA sertifikāts, kas parakstījis klienta sertifikātu un servera sertifikātu.

client_cert

Klienta sertifikāts NetHSM procesa autentifikācijai ar atslēgas vērtību krātuvi.

client_key

Klienta atslēga NetHSM procesa autentifikācijai ar atslēgas-vērtības krātuvi.

server_cert

Servera sertifikāts atslēgu un vērtību krātuves API.

server_key

Atslēgu un vērtību krātuves API servera atslēga.

device_key

NetHSM procesa ierīces atslēga. Lai uzzinātu vairāk par ierīces atslēgu, skatiet nodaļu Terminoloģija un konvencijas sistēmas projektā.

Lietošana#

Ražošanas konteiners atbalsta divus darbības režīmus. Turpmākajās nodaļās ir aprakstīts, kā palaist konteineru, izmantojot sniegtos compose failus vai komandu _run_.

Unix Mode#

Jūs varat saņemt sniegto sastādīt failu šeit. Pārliecinieties, ka jums ir pieejami compose failā minētie nepieciešamie noslēpumu faili.

Lai palaistu konteineru bez compose faila, jums ir jānodrošina ārējais etcd pats. Šeit jūs atradīsiet ieteicamo etcd konteinera attēlu. Pārliecinieties, ka ir nodotas konfigurācijas opcijas, kā aprakstīts sadaļā Konfigurācija.

Konteineru var izpildīt šādi.

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

Tas palaidīs NetHSM kā Unix procesu konteinerā un atklās REST API portu 8443, izmantojot HTTPS protokolu.

Svarīgi

Konteinerā tiek izmantots pašparakstīts TLS sertifikāts. Lai izveidotu savienojumu, pārliecinieties, vai tiek izmantoti pareizi savienojuma iestatījumi. Lai uzzinātu vairāk, skatiet NetHSM ievads nodaļu.

Unikernel režīms#

Jūs varat saņemt sniegto sastādīt failu šeit. Pārliecinieties, ka jums ir pieejami compose failā minētie nepieciešamie noslēpumu faili.

Lai palaistu konteineru bez compose faila, jums ir jānodrošina ārējais etcd pats. Šeit jūs atradīsiet ieteicamo etcd konteinera attēlu. Pārliecinieties, ka ir nodotas konfigurācijas opcijas, kā aprakstīts sadaļā Konfigurācija.

Konteineru var izpildīt šādi.

$ 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ādējādi NetHSM tiks palaists kā unikernel KVM virtuālajā mašīnā. Konteiners atklās REST API, izmantojot HTTPS protokolu, saskarnē tap200 ar IP adresi 192.168.1.100 un portu 8443.

Svarīgi

Konteinerā tiek izmantots pašparakstīts TLS sertifikāts. Lai izveidotu savienojumu, pārliecinieties, vai tiek izmantoti pareizi savienojuma iestatījumi. Lai uzzinātu vairāk, skatiet NetHSM ievads nodaļu.