domingo, 3 de marzo de 2013

Kubuntu: instalar DNI electrónico


IMPORTANTE: 
En el siguiente enlace te dejo el proceso actualizado a 2018 para instalar certificado FNMT
https://fpkanarias.blogspot.com.es/2018/03/instalar-certificado-digital-de-la-fnmt.html



He configurado mi lector de DNI electrónico para poder hacer unas gestiones con la administración sin salir de casa, ni hacer colas,... en fin, una maravilla. En la imagen muestro mi lector de DNI, un LTC31:



Veamos cómo hacerlo




1. Crear directorios para compilar código fuente

sudo mkdir /usr/lib/pkcs11
sudo mkdir /etc/opensc


2. Instalar el controlador del lector

sudo apt-get install libccid pcscd
sudo apt-get install libacr38u


3. Instalar las siguientes librerías


sudo apt-get install pinentry-gtk2 pcsc-tools libpcsclite1 libpcsclite-dev libreadline6 libreadline-dev coolkey


4. Comprobar que el sistema detecta nuestro lector


Conectamos el lector vía USB al ordenador, e insertamos nuestro DNI-e en él.
Desde consola, ejecutamos el comando lsusb
Vemos que sí ha detectado el dispositivo, se muestra la entrada de C3PO LTC31v2, que es el nombre de mi lector de DNI-e:



6. Comprobar que el sistema lee el DNI-e


De acuerdo, el sistema ha detectado mi lector pero, ¿lee mi DNI electrónico?
Escribimos el comando pcsc_scan y debemos obtener una salida similar a ésta:



7. Descargar certificado de la Autoridad de Certificación del DNI-e




En el enlace AC Raiz, descargamos archivo de 256: pkcs1-sha256WithRSAEncryption (el segundo, el de 256):



8. Descargar certificado de Autoridad de Validación




Bajo el apartado Autoridad de Validación, hacemos click sobre el enlace AV DNI FNMT y descargamos el archivo Certificado pkcs1-sha256WithRSAEncryption (el segundo, el de 256):



9. Descomprimir certificados


Descomprimimos ambos certificados de modo que tenemos los archivos .cer:
  • ACRAIZ-SHA2.crt
  • AVDNIEFNMTSHA2.cer


10. Añadir certificado AC Raiz en Firefox


En Firefox, menú Editar/Preferencias seleccionamos la pestaña Avanzado, y dentro de ésta, la opción Cifrado:


Pulsamos ahora sobre Ver Certificados, y en la pestaña Autoridades, hacemos clic en importar, eligiendo el archivo ACRAIZ_SHA2.crt:


Marcamos las tres casillas de confianza:


En la lista de certificados, deberá aparecer una nueva entrada "Dirección General de la Policía (AC RAIZ DNIE)":



11. Añadir certificado AV DNI FNMT en Firefox


Volvemos a esta pantalla de Firefox:


Pulsamos sobre Ver Certificados, y dentro, en la pestaña de Servidores:


En importar, seleccionamos el archivo AVDNIFNMTSHA2.cer.
En la lista de certificados, asegúrate que hay uno "Dirección General de la Policía (AC DNIE FNMT):



12. Instalar herramientas para compilar opensc


Desde la consola, ejecutamos:

sudo apt-get install build-essential autoconf subversion openssl libssl-dev libtool libltdl-dev pkg-config           

13. Descargar código de opensc


Desde la consola, ejecutamos:

En nuestro directorio home, creamos directorio sobre el que volcar código de opensc. Lo llamamos por ejemplo .openscDNIe:

mkdir .openscDNIe

Accedemos a esta carpeta con cd .openscDNIe

Descargamos la última versión de opensc:
 svn checkout --username anonsvn https://forja.cenatic.es/svn/opendnie/opensc-opendnie/trunk       


Para descargar el código nos pedirá una clave, que es anonsvn

Cuando termine la descarga, dentro del directorio .openscDNIe se habrá creado un nuevo directorio trunk:




14. Localizar ruta de la carpeta libltdl.la


En el paso 12 descargamos, entre otras cosas, esta librería, pero ¿dónde la ha colocado el sistema?
Con el comando find, la localizamos:
sudo find / -name libltdl.la


En mi caso está bajo /usr/lib/i386-linux-gnu/libltdl.la


En versiones más recientes de Ubuntu la encontramos en: /usr/lib/x86_64-linux-gnu/libltdl.la





15. Editar fichero Makefile.am

De nuevo en la carpeta .openscDNIe/trunk, editamos el fichero Makefile.am, con vi o con el editor que más te guste (gedit, kate,...):

sudo vi src/tools/Makefile.am

Buscamos la línea que aparece resaltada en la imagen:


Y añadimos esta nueva línea debajo de la segunda con la ruta en tu sistema de la librería libltdl.la (asegúrate de terminar la segunda línea con una barra invertida \):


Guardamos el fichero y cerramos el editor.


16.a Compilar el código: bootstrap

Ejecutamos el comando ./bootstrap, siempre bajo la carpeta ./openscDNIe/trunk:



16.b Preparamos la compilación: configure

Cuando termine bootstrap, configuramos la compilación con el comando:
./configure --prefix=/usr --sysconfdir=/etc/opensc






16.c Generamos el fichero makefile: make

Generamos el archivo makefile con el comando:
make





16.d Compilamos e instalamos: make install

Ahora sí, cuando termine, compilamos e instalamos:
sudo make install


16.e Comprobamos que todo ha ido bien

Cuando termine la compilación/instalación, bajo la carpeta /usr/lib debe haber un archivo llamado opensc-pkcs11.so:




17. Añadimos este módulo a Firefox

En firefox, pulsamos en el menú Editar/Preferencias/Avanzado/Cifrado:


Ahora hacemos click sobre Dispositivos de Seguridad:



Pulsamos sobre Cargar:


En nombre del módulo: PKCS11
En fichero del módulo, la ruta /usr/lib/opensc-pkcs11.so

18. Desactivamos mensaje de "Identificación protegida por Token"

Reiniciamos Firefox y ya casi podemos usar el DNI-e.

Vamos a la página de la policía para probar nuestro DNI-e:


Es posible que te salga una ventana continuamente diciendo algo así como "Identificación protegida por Token":


En el mensaje se puede leer (en inglés):



Protected Token Authentication
Please authenticate to the token. Authentication method depends on the type of your token.
Token: DNI electrónico (PIN 1)

En el mensaje se puede leer (en español):



Identificación protegida por token
Identifíquese con el token. El método de identificación depende del tipo de su token.
Token: DNI electrónico (PIN1)


Para resolver este problema, editamos el fichero opensc.conf:
sudo vi /etc/opensc/opensc.conf

Buscamos la línea que aparece señala a continuación:



Y sencillamente la descomentamos, eliminando la almohadilla inicial:



19. Reiniciamos el ordenador

Sencillamente reiniciamos el ordenador, y ya estaremos listos para probar nuestro DNIe


20. Probamos que todo funciona

Después de que haya reiniciado el equipo, accedemos a esta dirección web:



Al final de esta página pinchamos sobre un enlace que pone "Comprobación de certificados":

La primera vez Firefox nos va a avisar de que no se trata de un sitio de confianza. Indicamos que entendemos los riesgos y añadimos como excepción:



Ahora, volvemos a acceder al enlace y Firefox nos pide nuestra clave del DNIe, la introducimos:



Seleccionamos nuestro certificado asociado al DNIe:



El navegador nos muestra la información asociada a nuestro DNIe:



Fuente: Ubuntu-guía


IMPORTANTE: 
En el siguiente enlace te dejo el proceso actualizado a 2018 para instalar certificado FNMT
https://fpkanarias.blogspot.com.es/2018/03/instalar-certificado-digital-de-la-fnmt.html