EJBCA¶
Warnung
Because of some integration problems with the Sun PKCS11 provider, keys generated from EJBCA will have a random name instead of the name given in the interface. Therefor this documentation is only a Proof-of-Concept and we don’t currently support EJBCA.
EJBCA ist eine PKI-Zertifizierungsstellen-Software, die als Open Source verfügbar ist.
Um NetHSM mit EJBCA verwenden zu können, müssen Sie zunächst einrichten das NetHSM PKCS#11-Modul.
Dann konfigurieren Sie EJBCA für die Verwendung des NetHSM PKCS#11-Moduls, indem Sie einen Eintrag in der Datei /etc/ejbca/conf/web.properties
hinzufügen:
cryptotoken.p11.lib.418.name=NetHSM
cryptotoken.p11.lib.418.file=/usr/lib/nitrokey/libnethsm_pkcs11.so
Bemerkung
Das 418
im Namen ist ein Index, der für jedes PKCS#11-Modul in der Konfigurationsdatei eindeutig sein muss.
Um Schlüssel von der Schnittstelle zu erzeugen, müssen Sie die Option enable_set_attribute_value
in der Datei p11nethsm.conf
auf true setzen.
Nach dem Neustart von EJBCA können Sie ein neues Crypto Token in der EJBCA Admin GUI https://mycahostname/ejbca/adminweb/cryptotoken/cryptotokens.xhtml
hinzufügen. Der Crypto Token Typ ist PKCS#11 Crypto Token
und der Crypto Token Name ist NetHSM
.
Ausführen des Beispiels¶
Wenn Sie mit dem gegebenen Beispiel experimentieren wollen, können Sie git verwenden, um das nethsm-pkcs11 Repository zu klonen und die folgenden Befehle auszuführen:
Configure a NetHSM, either a real one or a container. Refer to chapter Getting Started to learn more.
Ändern Sie die libnethsm_pkcs11-Konfiguration, damit sie zu Ihrem NetHSM passt, unter
container/ejbca/p11nethsm.conf
.Bauen Sie den Container.
docker build -f container/ejbca/Dockerfile . -t pkcs-ejbca
Starten Sie den Container.
docker run --rm -it -p 9443:8443 -p 9080:8080 -h mycahostname -e TLS_SETUP_ENABLED="simple" pkcs-ejbca
Der Container ist erhältlich unter https://localhost:9443/.