Cómo instalar Firma Digital de Costa Rica en GNU/Linux Fedora 24

Esta guía documenta cómo instalar el controlador de la tarjeta de Firma Digital de Costa Rica y la jerarquía de certificados del Banco Central (SINPE) y del MICITT en el sistema operativo Fedora 24 de arquitectura Intel de 64 bits (x86_64). Para otros sistemas operativos se documentará más adelante.

El motivo de esta nueva guía de instalación tenía los siguientes propósitos:

  • Configurar de la forma más sencilla y adecuada el sistema para que funcione con la mayor cantidad de programas.
  • Lograr que funcione para todos los usuarios del sistema, incluyendo los nuevos usuarios creados tras las instalación.
  • Superar la prueba de firma digital (con applet Java) en el sitio web de Soporte Firma Digital con el navegador Mozilla Firefox.

Instalación de las dependencias

  • Instalar el soporte CCID de PC/SC para que reconozca el lector de tarjetas y el plugin NPAPI IcedTea-Web para poder cargar el applet Java que permite firmar desde el navegador Firefox:
sudo dnf -y install pcsc-lite-ccid icedtea-web

sudo systemctl enable pcscd.service

sudo systemctl start pcscd.service

Descarga del “instalador”

  • Descargar el “instalador” en el desplegable llamado “Usuarios Linux” en la página de descarga de instaladores del sitio web de Soporte Firma Digital de Costa Rica, introduciendo el número de serie de la tarjeta y el captcha.

Desempaquetado del “instalador”

  • Descomprimir el archivo zip descargado, en el momento de escribir esta documentación se llama sfd_ClientesLinux_Rev08.zip. Se creará una carpeta llamada Firma Digital. Se asume que se ha descomprimido dentro de la carpeta Descargas.

Instalación de los certificados

Es necesario agregar a la lista de confianza la jerarquía de certificados del SINPE y del MICITT. Para ello, un par de comandos:

  • Copiar los certificados:
sudo cp Descargas/Firma\ Digital/Certificados/* /usr/share/pki/ca-trust-source/anchors/
  • Regenerar los archivos de certificados para todas las aplicaciones:
sudo update-ca-trust

Instalación del módulo PKCS#11

  • Copiar el módulo PKCS#11 propietario en /usr/lib64/pkcs11:
sudo cp Descargas/Firma\ Digital/Librería/x64/libASEP11.so /usr/lib64/pkcs11/
  • Crear los siguientes enlaces simbólicos (necesarios para que funcionen algunos programas y applets):
sudo ln -s /usr/lib64/pkcs11/libASEP11.so /usr/lib64/

sudo ln -s /usr/lib64/pkcs11/libASEP11.so /usr/lib/
  • Crear el fichero /etc/Athena/IDPClientDB.xml y abrirlo para edición:
sudo mkdir /etc/Athena/

sudo gedit /etc/Athena/IDPClientDB.xml
  • En la ventana del editor de textos gedit, pegar el siguiente texto, guardar y cerrar el editor:
<?xml version="1.0" encoding="utf-8" ?>
<IDProtect>
 <TokenLibs>
  <IDProtect>
   <Cards>
    <IDProtectXF>
     <ATR type='hexBinary'>3BDC00FF8091FE1FC38073C821106600000000000000</ATR>
     <ATRMask type='hexBinary'>FFFF00FFF0FFFFFFFFFFFFFFFFF0FF00000000000000</ATRMask>
    </IDProtectXF>
   </Cards>
  </IDProtect>
 </TokenLibs>
</IDProtect>
  • Crear un fichero llamado /etc/pkcs11/modules/firmadigital.module y abrirlo para edición:
sudo gedit /etc/pkcs11/modules/firmadigital.module
  • En la ventana del editor de textos gedit, pegar el siguiente texto, guardar y cerrar el editor:
module: libASEP11.so
  • Ejecutar el siguiente comando para reemplazar el enlace simbólico a libnssckbi para que haga uso de p11-kit-proxy de forma prioritaria:
sudo alternatives --install /usr/lib64/libnssckbi.so libnssckbi.so.x86_64 /usr/lib64/p11-kit-proxy.so 50

Eso es todo. Es necesario reiniciar Firefox, Evolution y cualquier otra aplicación que use certificados para que se apliquen los cambios. Si se ha insertado el lector y la tarjeta al lector, estas aplicaciones preguntarán por el PIN, lo que indicará que se la instalación ha sido exitosa.

En Firefox ya se puede ir a realizar la prueba en el enlace “Verificación de Capacidad de Firma” del sitio web de Soporte Firma Digital de Costa Rica mencionado anteriormente y debería pasarla con éxito. En el navegador aparecerá que se quiere ejecutar “IcedTea-Web”, hay que permitirlo. Si el navegador hace preguntas sobre el applet responder afirmativamente y aceptar a todos los cuadros de mensaje que aparezcan e ingresar el PIN cuando lo solicite.

“Cómo instalar Firma Digital de Costa Rica en GNU/Linux Fedora 24” tiene 3 respuestas

  1. Andres Blanco

    Mae purisima vida, pura suerte toparme con este articulo en el momento justo. Las instrucciones “oficiales” nunca me sirvieron en ubuntu y esto me funko perfecto.

    Tuanis!

    Responder
  2. Harold

    A mi me funciona “open the box” en Ubuntu Mate, lo que me hace falta es un app de escritorio par afirmar pdf digitalmente con firma visible (como Xolido, o Adobe Reader DC), el mejor que he encontrado en C.R. es el de la empresa Alkaid que, aunque se realizo con plataformas de soft libre, es comercial. El Gobierno debería tener un firmador multiplataforma que cumpla con la neutralidad tecnológica. Es solo mi opinión. Gracias.

    Responder
    • Jonathan Vargas

      Hola Harold, efectivamente, LibreFirma es una excelente opción, pues goza de mantenimiento continuo, actualizaciones, compatibilidad y facilidad de uso, tanto para entornos de usuario individual como empresarial. El valor comercial del producto justifica estas posibilidades y el servicio que usted recibe.

      Responder

Deja un comentario

Tu dirección de correo electrónico no será publicada.