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 theNET_ADMIN
capability. For security reasons we recommend the unikernel mode.
The mode can be set with the environment variable MODE
(see next chapter Configuration).
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. |
|
A beállított feloldási jelszó automatikusan feloldja a konténert indításkor. |
|
A mód a unix vagy unikernel értékeket fogadja el, alapértelmezett értéke unix. |
|
Az etcd szolgáltatást futtató állomás URL/IP-címe. |
|
Az etcd szolgáltatást futtató port, alapértelmezett értéke 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. |
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-tanúsítvány, amely aláírta az ügyféltanúsítványt és a kiszolgálói tanúsítványt. |
|
Ügyféltanúsítvány a NetHSM folyamat hitelesítéséhez a kulcsérték-tárolóval. |
|
Ügyfélkulcs a NetHSM folyamat hitelesítéséhez a kulcsérték-tárolóval. |
|
Kiszolgálói tanúsítvány a kulcsérték-tároló API-jához. |
|
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.
To run the container without the compose file you need to provide an external etcd yourself. Here you find the recommended container image for etcd. Make sure to pass the configuration options, as described in chapter Configuration.
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
$ podman 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.
To run the container without the compose file you need to provide an external etcd yourself. Here you find the recommended container image for etcd. Make sure to pass the configuration options, as described in chapter Configuration.
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
$ 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
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.