EJBCA#

EJBCA to oprogramowanie urzędu certyfikacji PKI dostępne jako oprogramowanie typu open source.

Aby móc korzystać z NetHSM z EJBCA, należy najpierw skonfigurować ` <pkcs11-setup.html>`__ moduł NetHSM PKCS#11.

Następnie skonfiguruj EJBCA do korzystania z modułu NetHSM PKCS#11, dodając wpis w pliku /etc/ejbca/conf/web.properties:

cryptotoken.p11.lib.418.name=NetHSM
cryptotoken.p11.lib.418.file=/usr/lib/nitrokey/libnethsm_pkcs11.so

Informacja

418 w nazwie jest indeksem, który musi być unikalny dla każdego modułu PKCS#11 w pliku konfiguracyjnym.

Aby móc generować klucze z interfejsu, należy ustawić opcję enable_set_attribute_value na true w pliku p11nethsm.conf.

Ostrzeżenie

Ze względu na pewne problemy z integracją z dostawcą Sun PKCS11, klucze generowane z EJBCA będą miały losową nazwę zamiast nazwy podanej w interfejsie.

Po ponownym uruchomieniu EJBCA można dodać nowy token kryptograficzny w interfejsie GUI administratora EJBCA https://mycahostname/ejbca/adminweb/cryptotoken/cryptotokens.xhtml. Typ tokena kryptograficznego to PKCS#11 Crypto Token, a nazwa tokena kryptograficznego to NetHSM.

Wykonywanie przykładu#

Jeśli chcesz poeksperymentować z podanym przykładem, możesz użyć git, aby sklonować repozytorium nethsm-pkcs11 i uruchomić następujące polecenia:

  • Skonfiguruj NetHSM, rzeczywisty lub w kontenerze. Więcej informacji można znaleźć w przewodniku dla początkujących ` <getting-started>`__.

  • Zmień konfigurację libnethsm_pkcs11, aby pasowała do twojego NetHSM w container/ejbca/p11nethsm.conf.

  • Zbuduj pojemnik.

    docker build -f container/ejbca/Dockerfile . -t pkcs-ejbca
    
  • Uruchom kontener.

    docker run --rm -it -p 9443:8443 -p 9080:8080 -h mycahostname -e TLS_SETUP_ENABLED="simple" pkcs-ejbca
    

Pojemnik będzie dostępny na stronie https://localhost:9443/.