El otro día recibí un mensaje de correo electrónico sobre cómo usar el DNI electrónico en openSUSE (¡muchas gracias Miguel!). Si alguien pudiera revisarlo (no tengo DNIe) para añadirlo al wiki, pues… sería estupendo 🙂
He hecho un pequeño “howto” en blogdrake para hacer funcionar el DNIe en Mandriva Linux. Como openSUSE también es una distro basada en rpm, y tampoco tiene paquetes “oficiales” para el DNIe, probé en una máquina virtual con la 11.2, y funciona.
Quería pedirte que revisaras un poco los comandos, los completaras, y los pusieras en algún sitio para que la gente que quiera usar el DNIe en openSUSE no tenga problemas. Te resumo un poco aquí los comandos:
Parto de una openSUSE 11.2 actualizada, con el lector de tarjetas configurado
(cada lector es distinto…):zypper in libopenct1 libopensc2 pinentry pcsc-lite mozilla-nss-tools libreadline5 libltdl3
ln -s /usr/lib/libcrypto.so.0.9.8 /usr/lib/libcrypto.so.7
wget http://www.dnielectronico.es/descargas/PKCS11_para_Sistemas_Unix/1.4.6.Fedora_10_32/Fedora_Core_10_opensc-dnie-1.4.6-2.fc10.i386.rpm.tar
tar xvf ./Fedora_Core_10_opensc-dnie-1.4.6-2.fc10.i386.rpm.tar
zypper in ./opensc-0.11.7-7.fc10.i386.rpm
(Creo que elegí la opción 2 – el tema es que continúe la instalación. Tendría
que mirar las opciones de zypper para ver cual es la de forzar la instalación)
Si no sale volver a ejecutar el comando eligiendo otra opción, y diciendo que sí.rpm -ivh opensc-dnie-1.4.6-2.fc10.i386.rpm
Todo esto como root. A partir de aquí como usuario:
modutil -add DNIE -libfile /usr/lib/opensc-pkcs11.so -dbdir
/home/TUHOME/.mozilla/firefox/NOMBREPERFILFaltaría añadir un comando para bloquear la actualización del paquete opensc.
El enlace en blogdrake donde está explicado para Mandriva (y al final para openSUSE):
http://blogdrake.net/blog/gafe/dni-electronico-en-mandriva-2010
Both comments and pings are currently closed.
Ya lo probaremos. Tengo un lector aquí en casa y mi esposa tiene el DNI electrónico español. Parece que al alemán aún le falta.
No funciona correctamente, ya que tras seguir todo el proceso el comando pkcs11-tool -IO da la siguiente salida, y evidentemente no funciona (el lector se pone a parpadear en cuanto se abre el navegador web)
—
[opensc-pkcs11] ctx.c:365:load_dynamic_driver: dynamic library ‘/usr/lib/libopensc-dnie’: invalid module version
[opensc-pkcs11] ctx.c:465:load_card_drivers: Unable to load ‘dnie’.
[opensc-pkcs11] reader-pcsc.c:239:pcsc_transmit: unable to transmit
[opensc-pkcs11] apdu.c:394:do_single_transmit: unable to transmit APDU
[opensc-pkcs11] pkcs15.c:532:sc_pkcs15_bind_internal: unable to enumerate apps: Incorreparameters in APDU
[opensc-pkcs11] pkcs15.c:794:sc_pkcs15_bind: returning with: Unsupported card
Cryptoki version 2.20
Manufacturer OpenSC (www.opensc-project.org)
Library smart card PKCS#11 API (ver 0.0)
[opensc-pkcs11] pkcs15.c:794:sc_pkcs15_bind: returning with: Unsupported card
[opensc-pkcs11] pkcs15.c:794:sc_pkcs15_bind: returning with: Unsupported card
[opensc-pkcs11] pkcs15.c:794:sc_pkcs15_bind: returning with: Unsupported card
error: PKCS11 function C_OpenSession failed: rv = CKR_TOKEN_NOT_PRESENT (0xe0)
Aborting.
—–
Hola:
Por esta línea:
load_dynamic_driver: dynamic library ‘/usr/lib/libopensc-dnie’: invalid module version
creo que por lo que sea no has forzado la instalación del opensc, vuelve a probar con:
rpm -ivh ./opensc-0.11.7-7.fc10.i386.rpm
Creo recordar que tuve que instalarlo un par de veces hasta que elegí la opción correcta. La cuestión es forzar la instalación de ese paquete, y que no esté el opensc de openSUSE.
Ya nos contarás, saludos.
He logrado que funcione siguiendo estas instrucciones en Opensuse 11.2, pero tras mucho romperme la cabeza intentando hacer que funcionase.
Al final el tema está en seguir estas instrucciones tal como se indican (por cierto las opcciones son 2 y luego 1 jeje) pero antes de todo eso hay que desinstalar el opensc que seguramente tendremos instalado ya (al menos en mi caso así era), con el desinstalado y forzando la instalación como se indica en las instrucciones ha funcionado perfectamente.
Al entrar en yast y actualizar el opensc el dnie ha dejado de funcionar, por lo que he tenido que desintalarlo y seguir nuevamente los pasos y otra vez volvió a funcionar por lo que basta con marca en yast (botón derecho sobre el paquete) como bloqueado el opensc para que no lo actualice.
Muchas gracias por este manual.
Me alegro, una pregunta,
¿Estás en 32 o en 64 bits? Es que quise probarlo en Opensuse64 pero no me iba en el VirtualBox de 32 (emulación de 64 en 32).
Saludos