EJBCA#

EJBCA is een PKI Certificaat Autoriteit software die beschikbaar is als open source.

Om NetHSM te kunnen gebruiken met EJBCA moet je eerst setup de NetHSM PKCS#11 module.

Configureer vervolgens EJBCA om de NetHSM PKCS#11 module te gebruiken door een entry toe te voegen in het /etc/ejbca/conf/web.properties bestand:

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

Notitie

De 418 in de naam is een index die uniek moet zijn voor elke PKCS#11 module in het configuratiebestand.

Om sleutels van de interface te kunnen genereren, moet je de optie enable_set_attribute_value op true zetten in het bestand p11nethsm.conf.

Waarschuwing

Vanwege enkele integratieproblemen met de Sun PKCS11 provider, zullen sleutels gegenereerd vanuit EJBCA een willekeurige naam hebben in plaats van de naam die is opgegeven in de interface.

Na het herstarten van EJBCA kunt u een nieuw Crypto Token toevoegen in de EJBCA Admin GUI https://mycahostname/ejbca/adminweb/cryptotoken/cryptotokens.xhtml. Het Crypto Token type is PKCS#11 Crypto Token en de Crypto Token naam is NetHSM.

Het voorbeeld uitvoeren#

Als je wilt experimenteren met het gegeven voorbeeld kun je git gebruiken om de nethsm-pkcs11 repository te clonen en de volgende commando’s uit te voeren:

  • Configureer een NetHSM, een echte of een container. Zie de getting-started guide voor meer informatie.

  • Wijzig de configuratie van libnethsm_pkcs11 zodat deze overeenkomt met je NetHSM in container/ejbca/p11nethsm.conf.

  • Bouw de container.

    docker build -f container/ejbca/Dockerfile . -t pkcs-ejbca
    
  • Voer de container uit.

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

De container is beschikbaar op https://localhost:9443/.