EJBCA

Advertencia

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 es un software de Autoridad de Certificación PKI disponible como código abierto.

Para poder utilizar NetHSM con EJBCA es necesario configurar primero ` <pkcs11-setup.html>`__ el módulo PKCS#11 de NetHSM.

A continuación, configure EJBCA para que utilice el módulo PKCS#11 de NetHSM añadiendo una entrada en el archivo /etc/ejbca/conf/web.properties:

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

Nota

El 418 en el nombre es un índice que debe ser único para cada módulo PKCS#11 en el archivo de configuración.

Para poder generar claves desde la interfaz, debe establecer la opción enable_set_attribute_value en true en el archivo p11nethsm.conf.

Tras reiniciar EJBCA, puede añadir un nuevo token criptográfico en la interfaz gráfica de usuario del administrador de EJBCA https://mycahostname/ejbca/adminweb/cryptotoken/cryptotokens.xhtml. El tipo de token criptográfico es PKCS#11 Crypto Token y el nombre del token criptográfico es NetHSM.

Ejecución del ejemplo

Si quieres experimentar con el ejemplo dado puedes usar git para clonar el repositorio nethsm-pkcs11 y ejecutar los siguientes comandos:

  • Configure a NetHSM, either a real one or a container. Refer to chapter Getting Started to learn more.

  • Cambie la configuración de libnethsm_pkcs11 para que coincida con su NetHSM en container/ejbca/p11nethsm.conf.

  • Construye el contenedor.

    docker build -f container/ejbca/Dockerfile . -t pkcs-ejbca
    
  • Ejecuta el contenedor.

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

El contenedor estará disponible en https://localhost:9443/.