Instalar el dni electrónico en sistemas Gnu-linux Debian Jessie y Stretch

22:47:00 0 Comments



Introducción:
Esta guia tiene como finalidad el uso del DNI electrónico en todas las versiones de Debian que no tienen soporte oficial en:  http://www.dnielectronico.es/ ,aunque este guía sea válida para cualquier versión. En la página oficial de la FNMT nos encontramos que si hay soporte hasta la versión 7 (Wheezy), pero no para la versión 8 (Jessie), ya que esta versión es la actual "testing". 
Las guías que he visto, no me acaban de convencer, ya que o bien están incompletas o bien no arrojan demasiada luz creando bastante confusión, lo cual nos lleva a "googlear" durante mucho tiempo ya que nuestra tarjeta sigue sin funcionar.


Descargando los ficheros necesarios:
Lo primero de todo es bajarnos la última versión disponible en Opendnie:


Dentro de esa página iremos al apartado: Opendnie Releases (Sources) 
y descargaremos la última versión que en el momento de la edición del manual es: 0.12.2 y con extensión tar.gz como muestra la imagen:

El resto de ficheros que aparecen en la foto no son necesario, pero voy a explicar brevemente para que son:

md5Se utiliza para "hash" o lo que es lo mismo para saber que el fichero que nos hemos descargado es idéntico al original. Tendremos que tener instalado mkisofs o genisoimage para poder usar md5sum. Para más información: https://wiki.debian.org/MD5

patch- Son parches que se aplican a versiones concretas para la corrección de fallos. En nuestro caso hemos descargado la última versión completa con todos esos parches ya aplicados.


Instalando dependencias:
Para poder compilar con éxito el código fuente necesitamos tener instaladas previamente todas las dependencias, en caso contrario obtendrendríamos errores en la compilación.
Para ello lanzamos la siguiente orden:

sudo apt-get install build-essential pkg-config autoconf automake docbook-xsl subversion pcscd
libpcsclite-dev pcsc-tools libreadline6 libreadline-dev openssl libssl-dev libtool libltdl-dev libccid

también sería recomendable pero no obligatorio instalar: libopenct-dev


Probando nuestra lectora:

Si todo a ido bien, abriremos una emulador de terminal y teclearemos:
pcsc_scan

entonces insertaremos nuestro dni y aparecerán una serie de número y letras como estos:

Autor: mattiesworld



Eso indica que la lectora funciona correctamente, está foto se corresponde con una "Identify Card Belga" en nuestro caso mostrará DNI, con lo que podremos pasar al siguiente paso

Compilando:
Antes de nada vamos a descomprimir el fichero descargado, podemos utilizar si usamos entorno gráfico alguna aplicación tipo file-roller, desde consola:

tar zxf archivo.tar.gz

Una vez echo esto, con nuestro emulador de terminal entramos como root en el directorio que hemos descomprimido y ejecutamos estos comandos:

./bootstrap
./configure
make
make install

bootstrap y configure se encargan de preparar el entorno de compilación y comprobar que tenemos instaladas las dependencias necesarias para poder compilar con éxito el código fuente.
make compila las fuentes
make install las instala en el sistema una vez que han sido compiladas

Al hacer el make install aveces puede aparecer un error de que no existe el directorio pkcs11, basta con ejecutar este comando para solucionarlo:

sudo mkdir  /usr/lib/pkcs11/ && make install
si estamos usando testing o stretch:

sudo mkdir  /usr/local/lib/pkcs11/ && make install

Configurando nuestro navegador:

Abrimos Firefox o Iceweasel y entramos en “Preferencias / Avanzado / Cifrado / Dispositivos de seguridad” y añadimos un nuevo dispositivo, el nombre podemos dejar el que tiene por defecto o ponerle algo que nos parezca más apropiado. La ruta que se debe indicar es:

/usr/lib/opensc-pkcs11.so 

una vez localizado el archivo, lo seleccionamos y aceptamos.
Nuestro DNI-e está listo para usarse :)

Resolución de errores:


- ssl_error_renegotiation_not_allowed

Es un error muy común, porque en algunas versiones de Firefox está deshabilitado de forma predeterminada la re negociación de conexiones seguras.
Para solucionarlos, tecleamos en la barra de url de nuestro navegador:

about:config

Nos aparecerá un mensaje de zona hostil de manazas, aceptamos y tecleamos la siguiente clave:

security.ssl.allow_unrestricted_renego_everywhere__temporarily_available

y en el campo que pone "value" o "valor" hacemos doble click encima, y este cambiará su valor a true, como podemos ver en la captura.


- ssl_error_handshake_failure_alert


Este error, se traduce en que el módulo criptográfico no está correctamente instalado, aunque la lectora si está instalada correctamente. 
Seguramente cuando hemos añadido el dispositivo de seguridad, no nos hemos fijado en que nos mostrase algo parecido a esto:


La única solución es repasar todo la guía para ver que paso nos hemos saltado o que hemos echo mal, si instalamos paquetes que no están compilados para nuestra versión o distribución, es lógico obtener este fallo. De ahí que en esta guía se optase por compilar las fuentes de modo personalizado para nuestro host.

-Página de la agencia tributaria:

En este caso concreto podemos encontrarnos con múltiples errores dependiendo de lo que queramos hacer. El más común suele ser que hay que editar la confianza de los certificados:

A continuación acceda a "Firefox", "Opciones", "Opciones" ("Firefox", "Preferencias" en Mac; "Edición", "Preferencias" en Linux) en el menú de la parte superior; marque la opción "Avanzado" y seleccione la pestaña "Cifrado". Compruebe que la opción "Preguntar siempre" esté marcada para que la selección del certificado al acceder a las opciones de la página que lo requieran sea correcta. 
Haga click en el botón "Ver certificados". Compruebe que su certificado esté correctamente instalado y verifique que en la pestaña "Autoridades" aparece (si la entidad emisora indica que es necesario) el certificado raíz de la entidad emisora de su certificado. Por ejemplo, si se trata de la FNMT localícela en la lista y márquela de tal modo que se habilite el botón "Editar"; las tres opciones que aparecen deben estar marcadas para que el funcionamiento sea correcto.
Tened en cuenta que para presentar la declaración tributaria, nos hará falta Java, con lo cual no todos los errores van a estar encaminados a nuestro DNI. En linux las distribuciones usan IcedTea, la cual puede darnos algún que otro problema.

Para más ayuda consultar la página oficial de la Agencia Tributaria:


Comprobar que funciona:
El mejor sitio para probar nuestro DNIe es la página oficial del gobierno español, donde además de poder probar la autentificación, podremos probar también la firma.



0 comentarios: