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.

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

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.

  • 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 the NET_ADMIN capability. For security reasons we recommend the unikernel mode.

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.

etcd_client_cert

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

etcd_client_key

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

etcd_server_cert

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

etcd_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

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

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.