22 de agosto de 2024

Configurar un lector de DNI electrónico en Firefox con AutoFirma en Ubuntu (Versión 2024)

Este artículo es una actualización del artículo "Configurar un lector de DNI electrónico en Firefox con AutoFirma en Ubuntu" que escribí en 2021.

El cambio más importante es que a partir de la versión 22.04 de Ubuntu, Firefoz viene instalado mediante snap en vez de mediante APT así que lo primero que tienes que hacer es desinstalar el snap Firefox e instalarlo mediante APT que lo explico en otro artículo de mi blog.

El lector de tarjetas

Aunque supongo lo aquí escrito funcionará con otros, yo he utilizado el lector de tarjetas 23890 Primo Smart Card Reader de la marca Trust.

Instalación de libpkcs11

Para hacer funcionar el lector de tarjetas en nuestro Ubuntu tenemos que instalar libpkcs11. Esta biblioteca depende de otros paquetes, así que primero los instalamos con el siguiente comando:

sudo apt install pcsc-tools pcscd pinentry-gtk2 libassuan0

Una vez instalados, descargamos de la página oficial de la policía nacional el paquete DEB para nuestra distribución.

Y luego lo instalamos, en nuestro caso con el siguiente comando:

sudo dpkg -i libpkcs11-dnie_1.6.8_amd64.deb

Durante la instalación reiniciará el Firefox y mostrará una página con ayuda de configuración (que explicaremos en los puntos más abajo), y para que la instalación termine tenemos que cerrar Firefox.

Comprobamos el lector de tarjetas

En este punto conectamos el lector de tarjetas a nuestro ordenador y ejecutamos el siguiente comando:

lsusb

Si todo ha ido bien en la consola aparecerá listado el lector de tarjetas, en mi caso:

Alcor Micro Corp. AU9540 Smartcard Reader 

Todavía sin meter el DNI en el lector, pero con este conectado a nuestro ordenador, ejecutamos el siguiente comando:

pcsc_scan

Y deberá aparecer en el terminal que no hay tarjeta insertada, en mi caso:

Card state: Card removed

Y cuando introduzcamos el DNI en el lector, ejecutamos de nuevo el comando anterior:

pcsc_scan

Y deberá aparecer en el terminal que hay tarjeta insertada, en mi caso:

Card state: Card inserted

Configurar el dispositivo de seguridad en Firefox

Ahora vamos a Firefox > Preferencias > Privacidad & Seguridad > Dispositivos de seguridad (es un botón que está abajo)

Pulsamos en el botón "Cargar".

Ponemos un nombre al módulo, por ejemplo "DNI Electrónico".

Indicamos la ruta del archivo del módulo: /usr/lib/libpkcs11-dnie.so

Pulsamos en el botón "Aceptar" y aparecerá en los "Dispositivos de seguridad"

Añadir el certificado raíz de la Policía en Firefox

Ahora vamos a Firefox > Preferencias > Privacidad y Seguridad > Ver certificados (es un botón que está abajo)

Vamos a la pestaña "Autoridades" y pulsamos el botón "Importar".

Indicamos la ruta del certificado raíz: /usr/share/libpkcs11-dnie/ac_raiz_dnie.crt

El asistente le pedirá que establezca la confianza para el certificado.

Marque todas las casillas de confianza, y pulse el botón "Aceptar".

En este momento deberá aparecer el certificado raíz de la policía "Ver certificados".

Verificar que funciona el lector de DNI electrónico en Firefox

Ahora nos vamos a:

https://www.sede.fnmt.gob.es/certificados/persona-fisica/verificar-estado/solicitar-verificacion

Si te falla la primera vez, puede que tengas que entrar en una pestaña privada o borrar las cookies para que te funcione de nuevo.

En cualquier caso, si todo va bien, debería pedirte la contraseña del certificado de tu DNI electrónico, que deberían haberte dado en comisaría cuando te lo sacaste.

Una vez introducida la contraseña, en esa página deberías ver tus datos (nombre, apellidos y DNI).

Instalar las dependencias de AutoFirma

La versión 1.8.3 de AutoFirma, aunque dice que la versión de java no está oficialmente soportada, parece que funciona bien con la versión de java que viene instalada por defecto en Ubuntu, en mi caso la versión:

openjdk version "19.0.2"

Luego tenemos que instalar la dependencia "libnss3-tools" y para ello ejecutamos el siguiente comando:

sudo apt install libnss3-tools

Instalar AutoFirma

Para instalar AutoFirma nos tenemos que descargar el ZIP de la página de descarga oficial, descomprimirlo en una carpeta, y ejecutar el siguiente comando:

sudo dpkg -i AutoFirma_1_8_3.deb

Con AutoFirma instalado, si tienes un certificado, ya es bastante fácil firmar documentos. El problema es intentar firmar documentos con el DNI electrónico. Para ello hay que hacer ciertas cosas "raras".

Configurar AutoFirma con el DNI electrónico

Ahora parece que la versión 1.8.3 de AutoFirma funciona casi sin problemas con el DNI electrónico, simplemente pinchando en el botón "Continuar con DNIe" al arrancar AutoFirma.

Configurar AutoFirma con Firefox

Si hemos llegado hasta aquí sin problemas ya deberíamos poder utilizar el DNI electrónico tanto desde Firefox como desde AutoFirma. El problema llega cuando en un sitio web te piden desde la propia web firmar con AutoFirma.

Como hasta aquí, no es difícil la solución, pero hay que conocerla. AutoFirma no se lleva bien con los perfiles de Firefox, solo debería existir uno.

Si abrimos los perfiles de Firefox desde "about:profiles" vemos que por defecto tenemos 2, "default-release" y "default":

También podemos ver los perfiles arrancando Firefox desde la consola con el comando:

firefox -p

O modificando el fichero:

~/.mozilla/firefox/vim profiles.ini

El caso es que tenemos que eleminar los que no se usan y al final solo tenemos que tener el perfil "default-release".

Pero la cosa no acaba aquí, ahora hay que restaurar la instalación de AutoFirma con Firefox cerrado. Para ello cerramos el Firefox, abrimos AutoFirma, nos vamos a "AutoFirma > Herramientas > Restaurar instalación". Luego pulsamos en el botón "Iniciar restauración". Nos pedirá la contraseña de administrador del sistema. Y debería terminar con algo así:

Probar AutoFirma con Firefox

Y si hemos llegado hasta aquí, sin ningún error, ya solo falta probar que AutoFirma funciona bien desde esta página:

https://www.sededgsfp.gob.es/es/Paginas/TestAutofirma.aspx

probando a firmar un documento con el DNI electrónico con AutoFirma desde el navegador.

Recursos

La información para redactar este post la he sacado de:

Comparte:    Facebook Twitter

0 comentarios:

Publicar un comentario