Production Image

A termelési kép a magas biztonsági követelményeket támasztó termelési környezetek számára készült. Külső etcd kulcs-érték tárolót igényel, amelyhez titkosított kapcsolaton keresztül csatlakozik. A NetHSM folyamat hardveralapú szétválasztással (KVM) és eszközspecifikus titkosítással hajtható végre. Az image OCI image-ként kerül terjesztésre, és lokálisan futtatható egy kompatibilis futtatóval, például Dockerrel és Podman-nal.

A NetHSM hardverhez képest a következő funkciókat a szoftverkonténer REST API-ja nem tartalmazza:

  • Network configuration

  • Factory reset

  • Reboot

  • Software update

A NetHSM gyártási konténer csak fizető ügyfelek számára készült termék, és itt vásárolható meg: ` <https://www.nitrokey.com/contact>` __. A kép a Nitrokey NetHSM registry Nitrokey NetHSM registry a vásárlás után megadott hitelesítő adatokkal szerezhető be.

Figyelem

A NetHSM szoftverkonténer biztonsága nagymértékben függ a platform biztonságától. Egy veszélyeztetett platform könnyen veszélyeztetheti az általa futtatott NetHSM szoftverkonténert. Ezenkívül a TRNG nem létezik, így a NetHSM által használt és biztosított entrópia a platform entrópiájától függ.

Címkézési politika

A tárolóban lévő képek a Git commit hash-jával és a kiadás verziójával vannak megjelölve. A legújabb képet a latest címkével látjuk el.

Modes of Operation

A kép kétféle üzemmódban futtatható, azaz Unix processzként vagy unikernelként.

A Unix-folyamat mód a NetHSM-et az operációs rendszer tetején futó folyamatként futtatja.

Az egykerneles üzemmód a NetHSM-et vendégként futtatja egy KVM-alapú virtuális gépben, és erős elkülönülést biztosít a gazda operációs rendszertől. Ez az üzemmód csak Linuxon érhető el, és hozzáférést igényel a /dev/tun és a /dev/kvm eszközcsomópontokhoz, valamint a NET_ADMIN képességhez.

Fontos

A biztonság érdekében válassza a konténer unikernel üzemmódban történő futtatását.

Az üzemmód a MODE környezeti változóval állítható be (lásd a következő fejezetet Konfiguráció).

Konfiguráció

The container can be configured with the following environment variables.

Környezeti változó

Leírás

„DEBUG_LOG

Engedélyezi a NetHSM kiterjesztett naplózását.

UNLOCKPW

A beállított feloldási jelszó automatikusan feloldja a konténert indításkor.

MODE

A mód a unix vagy unikernel értékeket fogadja el, alapértelmezett értéke unix.

ETCD_HOST

Az etcd szolgáltatást futtató állomás URL/IP-címe.

ETCD_PORT

Az etcd szolgáltatást futtató port, alapértelmezett értéke 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.

A konténer futásidejű titkait, például a tanúsítványokat és a privát kulcsokat a Docker vagy a Podman titkok funkciójával kell beállítani.

Titkos változó

Leírás

ca_cert

CA-tanúsítvány, amely aláírta az ügyféltanúsítványt és a kiszolgálói tanúsítványt.

client_cert

Ügyféltanúsítvány a NetHSM folyamat hitelesítéséhez a kulcsérték-tárolóval.

client_key

Ügyfélkulcs a NetHSM folyamat hitelesítéséhez a kulcsérték-tárolóval.

server_cert

Kiszolgálói tanúsítvány a kulcsérték-tároló API-jához.

server_key

A kulcsérték-tároló API-jának kiszolgálói kulcsa.

„device_key

A NetHSM folyamat eszközkulcsa. Az eszközkulccsal kapcsolatos további tudnivalókért olvassa el a Terminológia és konvenciók fejezetet a rendszertervezésben.

Használat

A termelési konténer két működési módot támogat ` <container.html#Modes of Operation>` __. A következő fejezetek leírják, hogyan futtathatjuk a konténert a megadott compose fájlokkal vagy a _run_ paranccsal.

Unix Mode

Itt <https://raw.githubusercontent.com/Nitrokey/nethsm/refs/heads/main/src/container/alpine/compose-unix.yaml>`__. `kaphat egy megadott kompozitfájlt __. Győződjön meg róla, hogy a compose fájlban említett titkokhoz szükséges fájlok rendelkezésre állnak.

A konténer compose fájl nélküli futtatásához magának kell egy külső etcd-t biztosítania. Itt megtalálja az ajánlott konténerképet az etcd-hez. Győződjön meg róla, hogy átadja a konfigurációs beállításokat, ahogyan az a Konfiguráció fejezetben le van írva.

A konténer a következőképpen hajtható végre.

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

Ez a NetHSM-et Unix-folyamatként futtatja a konténerben, és a REST API-t a 8443-as porton keresztül a HTTPS protokollon keresztül teszi elérhetővé.

Fontos

A tároló saját aláírású TLS-tanúsítványt használ. Győződjön meg róla, hogy a kapcsolat létrehozásához a megfelelő kapcsolatbeállításokat használja. További információkért olvassa el a NetHSM bevezetés fejezetet.

Unikernel üzemmód

Itt <https://raw.githubusercontent.com/Nitrokey/nethsm/refs/heads/main/src/container/alpine/compose-unikernel.yaml>`__. `kaphat egy megadott kompozitfájlt __. Győződjön meg róla, hogy a compose fájlban említett titkokhoz szükséges fájlok rendelkezésre állnak.

A konténer compose fájl nélküli futtatásához magának kell egy külső etcd-t biztosítania. Itt megtalálja az ajánlott konténerképet az etcd-hez. Győződjön meg róla, hogy átadja a konfigurációs beállításokat, ahogyan az a Konfiguráció fejezetben le van írva.

A konténer a következőképpen hajtható végre.

$ 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

Ez a NetHSM-et unikernelként futtatja egy KVM virtuális gépen belül. A konténer a REST API-t a HTTPS protokollon keresztül a „tap200” interfészen teszi közzé a „192.168.1.100” IP-címmel és a „8443” porttal.

Fontos

A tároló saját aláírású TLS-tanúsítványt használ. Győződjön meg róla, hogy a kapcsolat létrehozásához a megfelelő kapcsolatbeállításokat használja. További információkért olvassa el a NetHSM bevezetés fejezetet.