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. |
|
Iestatīta atbloķēšanas parole automātiski atbloķē konteineru palaišanas laikā. |
|
Režīmam var piešķirt vērtības unix vai unikernel, noklusējuma vērtība ir unix. |
|
URL/IP adrese, kurā darbojas etcd pakalpojums. |
|
Osta, kurā darbojas etcd pakalpojums, noklusējuma iestatījums ir 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. |
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 sertifikāts, kas parakstījis klienta sertifikātu un servera sertifikātu. |
|
Klienta sertifikāts NetHSM procesa autentifikācijai ar atslēgas vērtību krātuvi. |
|
Klienta atslēga NetHSM procesa autentifikācijai ar atslēgas-vērtības krātuvi. |
|
Servera sertifikāts atslēgu un vērtību krātuves API. |
|
Atslēgu un vērtību krātuves API servera atslēga. |
|
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
$ podman 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
$ 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ā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.