Lector de DNI electrónico en Linux: rápido y sencillo en Firefox

Configurar un lector de DNI electrónico en Linux, para emplearlo con Firefox,  nunca fue tan sencillo. Es cierto que siempre ha sido bastante complejo, o al menos, a mí me lo parecía. Pero en mi experiencia de haber configurado lectores de DNIe en los últimos años, ahora es pan comido. Y os voy a desvelar cómo hacerlo paso a paso.

Aunque es obvio que para poder emplearlo, primero tenéis que adquirir un lector de DNIe español. Yo empleo uno de la marca Woxter, que apenas cuesta 12 €. Es realmente barato teniendo en cuenta el ahorro de dinero que realizamos sin tener que desplazarnos físicamente a todos los edificios de la administración. Merece la pena, y mucho.

En esta entrada os voy a explicar cómo configurar y emplear correctamente un lector de DNIe desde cero. Con apenas 3 pasos podremos disfrutar de toda la administración española sin movernos de nuestro asiento. El proceso en total lleva apenas 10 minutos. Y sin renunciar a nuestro Linux ni a nuestro zorrito de Firefox. ¿Os animáis?

Lector de DNI electrónico en Linux: rápido y sencillo en Firefox

Descarga del libpkcs11

El paquete libpkcs11 es imprescindible para poder emplear el lector de DNI electrónico en Linux. Este paquete no está en los repositorios, sino que la descarga del paquete libpkcs11 para Linux se hace desde los mismos servidores del Cuerpo Nacional de Policía de España, alojados en esta web. En mi caso, como empleo Linux Mint, me descargué el paquete Ubuntu_libpkcs11-dnie_1.5.0_amd64.deb. Una vez ya descargado, lo instalé rápidamente en mi ordenador haciendo doble clic.

Lector de DNI electrónico en Linux: operativo en Firefox sin problemas

Para la instalación de este paquete es necesario que se instalen otros cuatro paquetes básicos:

  • pcsc-tools
  • pcscd
  • pinentry-gtk2
  • libccid

Los podemos instalar ejecutando el siguiente código en nuestro terminal de Linux, si no se han instalado automáticamente al instalar libpkcs11.

sudo apt install pcsc-tools pcscd pinentry-gtk2 libccid

Comprobamos el lector de DNI electrónico en Linux

Una vez instalado el paquete libpkcs11, lo primero que hacemos es conectar el lector de DNI electrónico a nuestro ordenador mediante un USB.

Revisamos qué está conectado con lsusb

Pues eso mismo. Vamos a comprobar qué dispositivos están conectados en nuestro ordenador para ver si aparece nuestro lector de DNI electrónico en Linux. Para ello, ejecutamos lsusb en nuestro terminal Linux:

mario@mario-R530-R730-P530:~$ lsusb
Bus 002 Device 004: ID 152d:0578 JMicron Technology Corp. / JMicron USA Technology Corp. 
Bus 002 Device 003: ID 1ea7:0064 
Bus 002 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 1210:25f4 DigiTech 
Bus 001 Device 004: ID 058f:9540 Alcor Micro Corp. AU9540 Smartcard Reader
Bus 001 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Nos fijamos que nuestro lector de DNI electrónico en Linux se ha reconocido perfectamente porque aparece Alcor Micro Corp. AU9540 Smartcard Reader en la lista.

Comprobamos que el lector de DNIe funciona correctamente

Sin nuestro DNIe introducido en el lector, vamos a ejecutar en nuestra terminal Linux pcsc_scan:

mario@mario-R530-R730-P530:~$ pcsc_scan
PC/SC device scanner
V 1.5.2 (c) 2001-2017, Ludovic Rousseau <ludovic.rousseau@free.fr>
Using reader plug'n play mechanism
Scanning present readers...
0: Alcor Micro AU9560 00 00

Sun May 26 10:27:14 2019
Reader 0: Alcor Micro AU9560 00 00
Card state: Card removed, 
|

La ejecución de pcsc_scan deja la terminal activa a la espera de introducir el DNIe. En nuestro caso identifica perfectamente el dispositivo y además indica que no tiene ningún DNIe introducido, ya que aparece Card removed.

A continuación, vamos a introducir nuestro DNIe en el lector y vemos que nuestra terminal cambia automáticamente con los datos de nuestro DNIe, e indicando Card inserted.

Sun May 26 10:30:21 2019
Reader 0: Alcor Micro AU9560 00 00
Card state: Card inserted, 
ATR: ####################

ATR: ####################
+ TS = 3B --> Direct Convention
+ T0 = 7F, Y(1): 0111, K: 15 (historical bytes)
TA(1) = 96 --> Fi=512, Di=32, 16 cycles/ETU
250000 bits/s at 4 MHz, fMax for Fi = 5 MHz => 312500 bits/s
TB(1) = 00 --> VPP is not electrically connected
TC(1) = 00 --> Extra guard time: 0
+ Historical bytes: #########################
Category indicator byte: 00 (compact TLV data object)
Tag: 6, len: A (pre-issuing data)
Data: ##########################
Mandatory status indicator (3 last bytes)
LCS (life card cycle): 03 (Initialisation state)
SW: 9000 (Normal processing.)

Possibly identified card (using /usr/share/pcsc/smartcard_list.txt):
#######
#######
DNIE Spain (eID)
http://www.dnielectronico.es/PortalDNIe/
|

Si vemos algo parecido a lo que se ve arriba, es indicativo de que nuestro lector funciona correctamente, ya que permite identificar y leer nuestro DNIe. Asimismo, indicaros que las almohadillas anteriores equivalen a una numeración específica de mi DNI, por lo que lo he omitido.

Configurar Firefox para reconocer el lector de DNI electrónico en Linux

Una vez que hemos visto que el lector de DNI electrónico en Linux está perfectamente instalado y operativo en nuestro sistema operativo, tenemos que configurar Firefox para que podamos hacer uso de él. Entre otras cosas, podremos hacer cientos de papeles de la administración sin movernos de nuestra silla y a cualquier hora.

Preferencias de Firefox

Vamos a las Preferencias de Firefox, buscamos la pestaña Privacidad & Seguridad, y ahí Dispositivos de seguridad.

Dispositivos de seguridad

Ese botón nos lleva a una nueva ventana donde tendremos que cargar el dispositivo. Para ello presionamos sobre Cargar, a la derecha.

lector de dni electrónico en linux

En la ventana que nos aparece tendremos que indicar el Nombre del módulo que queremos dar a nuestro dispositivo. Podemos poner cualquiera, pero eso sí, que nos sea fácil de recordar qué es lo que hace ese dispositivo. En nuestro caso lo vamos a llamar DNI-e.

Por su parte, en Nombre del archivo del módulo tenemos que indicar la ruta de acceso al archivo libpkcs11-dnietif.so. En mi caso se sitúa en /usr/lib.

lector de dni electrónico en linux

De este modo, ya tendríamos preparado el dispositivo del DNIe en Firefox. Lo comprobamos pinchando sobre el lector que aparece debajo del nombre que hemos puesto DNI-e.

Uso del lector de DNI electrónico en Linux

Para poder usar nuestro DNI electrónico en Linux, una vez está todo instalado y configurado, es muy sencillo. Para ello, tenemos que ir a nuestro dispositivo que se ve en la última imagen y pinchar en Iniciar sesión, a la derecha. Ahí ponemos la contraseña que tengamos de la Policía y listo, ya podremos hacer papeleos y burocracias desde la comodidad de nuestro asiento.

Como complementación a esta última forma de proceder, os indico que otra forma es ir directamente a la web de la administración española que necesitemos y acceder a través de DNIe / Certificado electrónico. De este modo, siempre y cuando tengáis el DNIe introducido en el lector, os saldrá una ventana para que escribáis la contraseña. Y ya estaréis virtualmente dentro de la administración.

1 comentario en “Lector de DNI electrónico en Linux: rápido y sencillo en Firefox”

Deja un comentario