Usted está aquí

Configurar la tarjeta electrónica (smartcard) de Izenpe en Ubuntu Linux para acceder a Sedes Electrónicas (Tráfico, Seguridad Social...)

Esta es una receta para habilitar el uso de la tarjeta electrónica corporativa o de ciudadano de Izenpe en Linux. Ojo que no es lo mismo usar certificados de Izenpe que el DNIe u otras tarjetas con certificados válidos para la administración pública. Cada una tiene su kit y no suelen ser compatibles entre ellos.

Con la firma configurada podrás:
- Identificarte de manera segura para acceder a las Sedes Electrónicas de la Administración (Seguridad Social, Tráfico, Ayuntamientos, universidades, ...)
- Firmar electrónicamente documentos. Muchos trámites administrativos online necesitan de una firma electrónica por nuestra parte para poder tramitarse.

Pasos para configurar la tarjeta en un ubuntu 18.10 (Hemos probado en más versiones de Ubuntu, pero el último probado ha sido el último ubuntu disponible a día de hoy)

0.- Preparación del equipo
Instalar en Ubuntu el siguiente software:
$ sudo apt install pcscd pcsc-tools libusb-0.1-4 libnss3-tools

Para ver si funciona el lector de tarjetas, debes ejecutar:
pcsc_scan y ver si cuando metes y sacas la tarjeta lo detecta (devuelve cierta información al insertar una tarjeta)

Si no funciona y Linux NO DETECTA la inserción de la tarjeta, en otra ventana ejecutad:

killall pcscd
(verificamos que ha muerto el proceso que detecta la inserción de tarjetas smartcard)

Y lo lanzamos en modo interactivo para que nos diga qué está pasando. Mostrará cual es el error y con una búsqueda en google (generalmente) encontraremos si hay alguna nueva dependencia que haya que instalar:
pcscd --foreground

Tras esto volver a ejecutar en la otra ventana "pcsc_scan" para ver qué pasa.

1.- Descarga el Kit de Izenpe (Desde su web www.izenpe.eus)
Ir a "Certificados Digitales -> Puesta en Marcha Certificados

Descargamos desde donde pone "Linux" en orden:

Software Izenpe para Linux (ZIP, 153 MB)

Descomprimimos el archivo (con unzip o desde el interfaz gráfico) y vemos los archivos:
Middleware_izenpe_1.4.10.435_32.deb
Middleware_izenpe_1.4.10.435_32.rpm
Middleware_izenpe_1.4.10.435_64.deb
Middleware_izenpe_1.4.10.435_64.rpm

Nuestro PC de pruebas es relativamente moderno (5 años) y tiene 64 bits, su sistema operativo es Ubuntu, luego necesitamos el "Middleware_izenpe_1.4.10.435_64.deb" de 64 bits:

Así que instalamos con el comando (o desde el interfaz gráfico clicando encima):
$ sudo dpkg -i Middleware_izenpe_1.4.10.435_64.deb

2.- Descargamos ahora "Certificado Izenpe para Ubuntu Debian (DEB, 13 KB)" y lo instalamos (podemos clicar desde el entorno gráfico, nos pedirá la contraseña de nuestro usuario):
$ sudo dpkg -i izenpe-certificates_1.2.0.0_all.deb

3.- Descargamos el Id@zki desktop de 64 bits y lo instalamos:
Como detalle hay que descargarlo con clic con botón derecho del ratón en el enlace y "descargar", ya que si no, te carga el fichero directamente en el navegador en lugar de descargar el fichero "idazki-desktop-linux64.run".

Para instalarlo debemos ejecutar:
$ sudo chmod+x idazki-desktop-linux64.run
$ sudo idazki-desktop-linux64.run

4.- En firefox debería haber una entrada en

Preferencias -> Privacidad y seguridad -> Dispositivos de seguridad
Tiene que haber una entrada que apunte a la librería:
/usr/lib/bit4id/libbit4xpki.so

Si no la hay Pulsamos en "cargar" y añadimos un nombre "Izenpe" y la ruta de la librería del lector de tarjetas: "/usr/lib/bit4id/libbit4xpki.so"

Ahora ya está configurado firefox. Podemos ver la vida laboral, o los puntos del carnet, o cualquier servicio que requiera de certificado electrónico.

5.- Para configurar Chrome hay que ejecutar los siguientes comandos:
$ cd
Y cargamos la librería del lector en Chrome:
$ modutil -dbdir sql:.pki/nssdb/ -add "CAC Module Izenpe" -libfile /usr/lib/bit4id/libbit4xpki.so

Para comprobar si la ha cargado bien:
$ modutil -dbdir sql:.pki/nssdb/ -list

Ahora ya puedes usar la smartcard de Izenpe también en Chrome.

Para hacer pruebas de verificación puedes usar :
pcsc_scan (si metes y sacas la tarjeta del lector te dará un log que te ayuda a detectar si tu tarjeta está bien configurada)
pkcs15-tool --dump
pkcs11-tool -L
...

Estos comandos dan posibilidad de interactuar con las tarjetas para obtener información y otras utilidades. Para más información el "man" de linux ! (ej. "man pkcs15-tool")

Si lo estás leyendo, espero que te haya servido!

PD: Para PCs recalcitrantes que no funcionen, recuerde hacer primero limpieza de versiones viejas de Izenpe desinstalando el kit de izenpe viejo. Además compruebe que en /usr/lib no existan ficheros del estilo "libbit4*.so" (De nuestros amigos de https://www.bit4id.com ) Si las hubiera bórrelas y reinstale el kit, que las vuelve a copiar.