AutoFirma, Java, Firefox, DNIe, FNMT y Debian 10

AutoFirma, Java, Firefox, DNIe, FNMT y Debian 10

Logo Autofirma Ministerio de Hacienda y Administraciones Públicas

Este artículo es una actualización del anterior de Autofirma para Debian 8. También hemos encontrado una buena referencia en este otro artículo para Instalar AutoFirma en Debian 10.

Trucos para hacer funcionar la Administración Electrónica en GNU/Linux resolviendo algunos errores que hemos encontrado en la aplicación AutoFirma (antes @firma) del Ministerio de Hacienda y Administraciones Públicas. Estas instrucciones están enfocadas a personal con ciertos conocimientos del sistema operativo del pingüino por lo que no llegamos al detalle de todos los pasos. Si necesita más ayuda con Linux, póngase en contacto con nosotros.

AutoFirma

Se puede descargar de aquí

Tiene las siguientes dependencias:

  • openjdk-8-jre | oracle-java8-installer
  • libnss3-tools
Utilizaremos en la medida de lo posible solo Software Libre por lo que emplearemos OpenJDK 8 (no Oracle Java 8)

OpenJDK 8 u OpenJDK 11

La dependencia de AutoFirma 1.6.5 es openjdk-8-jre pero hemos detectado que para que funcione la petición del Certificado para Administrador Único (por ejemplo), es necesario el openjdk-11-jre. En Debian 10, por tanto, procederemos a instalar OpenJDK 8 y OpenJDK 11:

# apt update
# apt install openjdk-8-jre openjdk-11-jre

Confirmar que tenemos la versión de Java activada

# update-alternatives --config java
Existen 3 opciones para la alternativa java (que provee /usr/bin/java).
Selección Ruta                                             Prioridad  Estado
------------------------------------------------------------
* 0         /usr/lib/jvm/java-11-openjdk-amd64/bin/java       1111      modo automático
  1         /usr/lib/jvm/java-11-openjdk-amd64/bin/java       1111      modo manual
  2         /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java    1081      modo manual
  3         /usr/lib/jvm/oracle-java8-jdk-amd64/jre/bin/java  318       modo manual
Pulse <Intro> para mantener el valor por omisión [*] o pulse un número de selección:

Como hemos indicado, para que funcione AutoFirma con la web de la FNMT, hay que escoger OpenJDK 11. La opción 0 (o también la 1 en modo manual), en este caso /usr/lib/jvm/java-11-openjdk-amd64/bin/java es la que tenemos que tener seleccionada.

Verificar que solo se tiene 1 perfil de Firefox

Por desgracia, otro error que tiene AutoFirma es que no funciona bien en sistemas con varios perfiles de Firefox. A veces funciona, si el perfil por defecto es el primero que encuentra pero esto no siempre ocurre así. @mbouzada y @rastersoft nos han puesto también sobre aviso con este error.

Para ver los perfiles que tenemos de Firefox, abrimos una terminal y ejecutamos como usuario:

firefox --ProfileManager

Aparecerá una ventana con los perfiles que tengamos:

Debemos eliminar el perfil que no utilizamos. Se debe hacer esta operación con cuidado ya que eliminaremos el perfil que no deseamos con toda su información.

Librerías NSS y corrección de @firma y AutoFirma en Debian 10

Existen al menos 2 problemas del sistema AutoFirma que provocan el error «Ha ocurrido un error realizando la operación. (SAF_08: Error accediendo al almacén de claves y certificados)»

Autofirma, error SAF_08: Error accediendo al almacén de claves y certificados

Al parecer hay un error en el fichero es/gob/afirma/keystores/mozilla/MozillaKeyStoreUtilitiesUnix.class que no incluye todas las rutas donde encontrar las librerías NSS y por tanto tenemos que crearlas manualmente:

  • Para 32bits
    # mkdir /opt/firefox
    # cd /opt/firefox/
    # ln -s /usr/lib/i386-linux-gnu/nss/libsoftokn3.so
    # ln -s /usr/lib/i386-linux-gnu/libnspr4.so
    
  • Para 64bits
    # mkdir /opt/firefox
    # cd /opt/firefox/
    # ln -s /usr/lib/x86_64-linux-gnu/nss/libsoftokn3.so
    # ln -s /usr/lib/x86_64-linux-gnu/libnspr4.so
    

En algunos casos, esto no es suficiente y además es necesario parchear las referencias a ~/.pki/nssdb para que funcione con los certificados de Firefox, haciéndolo como usuario en este caso:

$ mkdir -p ~/.pki/nssdb
$ cd ~/.pki/nssdb
$ ln -s ~/.mozilla/firefox/*.default/cert8.db
$ ln -s ~/.mozilla/firefox/*.default/key3.db

Instalación de AutoFirma en Debian 10

Ahora ya podemos instalar el AutoFirma con normalidad. Para más información consultar el artículo de Enrique Saborit.

Otros errores

  • En algunos casos, hemos detectado que si está instalado Mozilla Thunderbird, también nos daba error al abrir la librería libnss de Thunderbird en lugar de la de Firefox.

Configurador FNMT

Desde el 2020, es obligatorio utilizar el Configurador FNMT para realizar la solicitud del certificado en la web ya que genera las claves de cifrado. El Configurador de la FNMT se puede descargar de aquí.

y en concreto el paquete para Debian 10:

https://descargas.cert.fnmt.es/Linux/configuradorfnmt_1.0.1-0_amd64.deb

DNIe (y funcionamiento con la versión del DNI físico)

Para el funcionamiento del DNIe hay que instalar las librerías correspondientes que se encuentran aquí:

https://www.dnielectronico.es/PortalDNIe/PRF1_Cons02.action?pag=REF_1112

y en concreto el paquete para Debian 10:

https://www.dnielectronico.es/descargas/distribuciones_linux/Debian_10_libpkcs11-dnie_1.6.1_amd64.deb

Podemos validar el funcionamiento del DNIe utilizando la plataforma ValidE.

A la hora de conectarse contra el DNIe, únicamente nos debe aparecer este diálogo para introducir el PIN:

Qué no hay que instalar

Si no se van a utilizar Certificados de Usuario en Tarjeta Criptográfica, es recomendable NO instalar más software porque va a interferir en el uso del DNIe. Por tanto, para el correcto funcionamiento de AutoFirma, FNMT y DNIe, que es para lo que lo quiere el grueso de la población, NO hay que instalar:

  • No instalar el DNIe de la FNMT libpkcs11-fnmtdnie como se indica aquí.
  • No cargar el módulo del DNIe en Firefox libpkcs11-dnie.so tampoco, con lo cual nos quedaría así:

Contacte con nosotros

Si aún no ha conseguido hacer que funcione la firma electrónica en Linux, por favor, póngase en contacto con nosotros.

Entrada anterior
Librebit y Ultreia formarán y contratarán a jóvenes en Linux
Entrada siguiente
Software Libre por los aires, el caso de AENA

Entradas relacionadas

No se han encontrado resultados.
keyboard_arrow_up