Utilizando el DNIe desde ubuntu

Hace ni se sabe que tengo un lector de DNI electrónico, bueno, si lo se, me lo regalaron por asistir a un FICOD cuando eso todavía significaba algo… El lector es el que podéis ver en la imagen y, obviamente, bajo todos esos logotipos debería haber algo que funcionase, ¿no?

DNIeY la oportunidad para usarlo me vino por un despiste, vamos, lo normal… Dejé que caducase mi certificado de la FNMT, una pena, llevaba con él como 15 años y no lo había dejado caducar nunca, y me sirvió fielmente para todas mis gestiones desde el primer día… Pero en estos tiempos uno tiene la cabez donde no debe y se olvida de cosas como estas. En cualquier caso, y dado que salir a la delegación de hacienda para identificarme me parecía muy del siglo pasado, me busqué la forma de hacerlo totalmente por internet. Y, por increible que parezca, esa forma existe, se puede solicitar un certificado de la FNMT utilizando el DNI electrónico, ¿fácil no?

Pues no… En la página de la FNMT nos explican con todo lujo de detalles cómo configurar los navegadores y las limitaciones que tenía el proceso (en principio solo soportaban Internet Explorer con Windows XP y Firefox – con versiones inferiores a la 33 – en el resto). Bueno, todo es intentarlo.

Lo primero es hacer que funcione el DNIe en mi Ubuntu 14.04, dado que hay una guía fantástica guia ubuntu al respecto y mi lector estaba soportado, pues nada, simplemente la seguí al pié de la letra y, aparentemente, funcionó. Desde firefox (la versión que descargué ad-hoc para el proceso) se reconocía el dispositivo de seguridad y pedía el pin para ver los certificados… Vamos bien.

Lo siguiente no fué tan bien… El proceso de solicitud del certificado se paraba diciendo que «su navegador no ha generado una firma válida». Round 1 para FNMT.

Bueno, no pasa nada, lo intentaremos en MAC… Nada que hacer, ni siquiera consigo que me reconozca la tarjete. Round 2 también para FNMT.

Da igual, probamos en una máquina virtual con Windows 7, seguro que hay un procedimiento sencillo… Instalo los drivers y todos los exe que me aparecen en la sección de descargas y… Nada, Firefox no reconoce la tarjeta y Explorer (si, la desesperación nos puede) si que la reconoce pero da un error detrás de otro (ni siquiera llego al error que me sale en Ubuntu).

Llegados a este punto me pregunto, ¿alguien ha conseguido ejecutar este procedimiento alguna vez? y lo dejo pasar hasta hoy… Donde decido que ya es suficiente y que tengo que conseguirlo… Me pongo serio, me remango y me siento ante mi Ubunto 14.04, reviso que el DNI se lee correctamente y después de mucho trastear me encuentro con que el problema por el que no se genera la firma adecuada no es de los certificados de la FNMT, sino de la tarjeta, en concreto de este:

Captura de pantalla de 2014-12-05 22:50:22Que solo salió por casualidad cuando estaba repasando TODOS los certificados de autoridades que tenía en el Firefox (y son cientos), el caso es que este certificado hay que permitir que firme también editando la confianza:

Captura de pantalla de 2014-12-05 22:51:59Después de esto ya pasabamos del paso de generar la firma, peeeeeero nos quedaba otro error que nos saltaba justo después de ese paso y es que nos daba un error así:

Un módulo PKCS #11 ha devuelto CKR_GENERAL_ERROR, indicando que ha sucedido un error no recuperable.

(Código de error: sec_error_pkcs11_general_error)

Y esto no pintaba bien… Por suerte google salió al rescate y encontré este hilo en cenatic que hablaba del problema. La solución fue buscar la librería libpcsclite.so.1 y poner la ruta completa en el archivo /etc/opensc/opensc.conf en la línea:

provider_library = /lib/x86_64-linux-gnu/libpcsclite.so.1

Con eso y un poquitín más de tiempo ¡Lo conseguí! pude por fin solicitar mi certificado (y ya lo tengo de hecho)… Lo que no se es lo que hará la gente con windows.