Instalar el DNI electrónico español en Debian Wheezy

Recientemente he adquirido un nuevo PC de sobremesa para mi uso doméstico al que he instalado rápidamente mi sistema operativo favorito, Debian Linux. En esta ocasión, en vez de utilizar la versión estable actual (Squeeze), lo he hecho con la versión en desarrollo (Wheezy), ya que prefiero tener el software que uso lo más actualizado posible y de paso ayudo al proyecto Debian si encuentro algún fallo o defecto del que pueda informar.

Dado que se trata del PC de mi casa, es imprescindible para mí contar con soporte del DNI electrónico, de forma que pueda llevar a cabo desde el ordenador personal las aún escasas gestiones telemáticas disponibles en España. Estos son los pasos que he dado para conseguir dicho soporte, que por cierto son indiferentes de la arquitectura de Debian instalada (excepto a la hora de escoger los paquetes de software adecuados). En mi caso, elegí utilizar la arquitectura amd64 (64 bits) ya que mi nueva CPU lo permite.

En primer lugar debemos dirigirnos a la página web del Ministerio del Interior y descargarnos el paquete de soporte del DNI electrónico. Como no hay versión para Wheezy, tendremos que conformarnos con la de Squeeze, lo que nos provocará una serie de inconvenientes que comentaré a continuación junto con su solución. La dirección web para descargar el paquete correspondiente es la siguiente:

A continuación debemos descargarnos de Debian los paquetes de los cuales depende el anterior. Aquí surge el primer inconveniente, ya que algunos de dichos paquetes o bien no existen en Wheezy o los que sí existen no son compatibles. Así que debemos descargarnos los de Squeeze en su lugar. Pero antes procederemos a instalar como administrador del sistema los que sí son compatibles:

# apt-get install libpcsclite1 libopenct1 pinentry-qt

Si utilizamos Gnome en vez de KDE como escritorio, cambiamos el paquete pinentry-qt por pinentry-gtk2 (pinentry es el encargado de solicitarnos el PIN de nuestro DNIe cuando lo utilizamos).

Ahora pasamos a descargarnos los paquetes necesarios de Squeeze desde estas direcciones:

y a instalarlos junto con el paquete de DNI electrónico:

# dpkg -i Debian_Squeeze_opensc-dnie_1.4.8-2_amd64.deb opensc_0.11.13-1.1_amd64.deb libopensc2_0.11.13-1.1_amd64.deb mozilla-opensc_0.11.13-1.1_amd64.deb libssl0.9.8_0.9.8o-4squeeze13_amd64.deb

A continuación tenemos que configurar adecuadamente opensc para que utilice la librería libpcsclite1 correcta. Editamos el fichero /etc/opensc/opensc.conf, quitamos el comentario del parámetro provider_library y, según la arquitectura de nuestra Debian, le asignamos el siguiente valor:

  • 32 bits: /usr/lib/i386-linux-gnu/libpcsclite.so.1
  • 64 bits: /usr/lib/x86_64-linux-gnu/libpcsclite.so.1

Durante la instalación de los paquetes se nos informa de que para poder utilizar el DNI electrónico en Firefox, es necesario utilizar la opción «Registrar módulo DNIe PKCS#11» del menú «Aplicaciones -> Oficina», algo que debemos hacer a continuación y sin el navegador abierto. Para aquellos que se lo estén preguntando, efectivamente bajo Linux sólo hay soporte de DNIe para el navegador Firefox. Una vez arrancado el navegador, procedemos a cerrarlo para que se instale el certificado raíz de la Dirección General de la Policía. Es posible que en este paso se nos solicite guardar el certificado en vez de instalarlo, por lo que a continuación lo importaremos en Firefox a través de «Preferencias -> Avanzado -> Cifrado -> Ver certificados -> Importar».

Con esto debería ser suficiente para que funcione correctamente el DNI electrónico en Debian Wheezy, pero para estar completamente seguros en primer lugar miramos en «Preferencias -> Avanzado -> Cifrado -> Dispositivos de seguridad» si aparece en la lista «DNIe Modulo PKCS #11». A continuación, comprobamos que el sistema reconoce sin problemas nuestro lector de tarjetas inteligentes. Para ello, instalamos los paquetes necesarios:

# apt-get install pcscd pcsc-tools

y ejecutamos el siguiente comando:

# pcsc_scan

el cual nos indicará si el lector ha sido reconocido y si hay introducida alguna tarjeta inteligente (como nuestro DNI electrónico). Incluso podemos probar en tiempo real a introducir y extraer el DNI para comprobar que dichas operaciones se detectan adecuadamente.

Ya sólo queda reiniciar la sesión de usuario y, tras acceder de nuevo al sistema, dirigirnos a algún sitio web que requiera del DNI electrónico y utilizarlo. Recomiendo utilizar la página que la propia Dirección General de la Policía facilita para esta comprobación:

Si la verificación es positiva, ya podemos utilizar nuestro DNIe con total garantía para realizar nuestras gestiones telemáticas, firmar documentos, etc.