Lector de tarjetas criptograficas Omnikey no funciona

Imagen de Aldevaran
0 puntos

Bueno, hos comento, resulta que hace unas semanas me pase por el SAE(servicio andaluz de empleo) y con lo del tema de la firma digital para promocionarla y eso, ahora te la davan en una tarjeta como la de credito pero con chip, en vez de descargartela de la web del ministerio.... bueno que con eso tambien regalaban el aparatito en concreto un "Omnikey" modelo 3121 por USB, patra poder usar la tarjeta en casa y asi no tenerla que tener instalada, aparte de que en un futuro servira para el DNIe. Bueno me dejo de enrrollar y voy al asunto, resulta que cuando lo conecto a Ubuntu, me hace amago de encenderse como si lo hubiera detectado, pero solo eso, he probado a instalar algun que otro programa que viene en los repositorios, pero nada, y si sigo la "magnific" guia que te dan los de la Junta de Andalucia, no consigo sacar nada en claro, porque 1º esta en ingles(cosa que no me sorprende) y 2º la informacion que viene es de hace 2 o 3 años, asi que con ello lo unico que encuentro son respuestas obsoletas y que no me sirven ni por asomo. Bueno yo uso kubuntu 7.04, si alguien mas tiene este problema o algo parecido que exponga en este tema y haber si entre todos podemos sacarlo. gracias de antemano.

Imagen de vradick
+1
0
-1

Pequeña guía para hacer funcionar el lector de tarjetas criptográficas en GNU/Linux:

  1. Driver del lector del tarjetas: Necesitas instalar el driver que corresponda a tu lector de tarjetas. El modelo 3121 de Omnikey utiliza el estándar CCID, así que no tienes que instalar nada en particular.
  2. Middleware PC/SC: Es el middleware que conecta el software criptográfico con el lector de tarjetas. Se encuentra en los repositorios: $ sudo apt-get install pcscd pcsc-tools
  3. Driver de la tarjeta: Las tarjetas criptográficas tienen su propio driver para acceder a los certificados guardados en ellas. Si tienes suerte el proyecto opensc soportará tu tarjeta, si no debes buscar ese driver dónde puedas. $ sudo apt-get install opensc mozilla-opensc
  4. Configurar el navegador para que utilice ese dispositivo de seguridad: Esto depende de cada navegador.
  5. Instalar los certificados de la CA que expide los certificados.
  6. Utilizar los certificados.

Espero que esta pequeña guía sirva para algo. En caso de duda podéis mirar (AVISO: autobombo): Utilizar Tarjeta criptográfica en GNU/Linux

+1
0
-1
Imagen de Aldevaran
+1
0
-1

Si alguien me puediera ayudar a solucionar los puntos 4 y 5 de la respuesta anterior lo agradeceria, es que he estado mirando por todos lados y no encuentro nada, y tambien e visitado el enlace que me propusieron en la respuesta anterior y no encontrado la forma de poderlo hacer.

 

Asias de antemano, si consigo dar con la respuesta y no me habeis contestado la publico aqui para ayudar a los denmas que tengan este mismo problema. 

+1
0
-1
Imagen de vradick
+1
0
-1

Si los puntos anteriores te funcionan (puedes comprobarlo con pcsc_scan, que te devolverá resultados de leer la tarjeta que tengas: ATR, tipo de tarjeta, etc) el siguiente paso es sencillo, lo detallo más a continuación:

4. Configurar el navegador para que utilice ese dispositivo de seguridad (vamos a hacerlo con Firefox/Iceweasel):

- Ejecutamos el menú: Edición->Preferencias.

- En los iconos superiores elegimos Avanzado.

- En las pestañas que hay debajo de los iconos superiores elegimos Cifrado.

- En los botones que aparecen pulsamos sobre Dispositivos de seguridad.

- En la ventana que aparece (Administrador de dispositivos), pulsamos sobre el botón Cargar, que se encuentra a la derecha de la ventana.

- Buscamos la localización del módulo PKCS#11 de nuestra tarjeta. Esto dependerá de qué tarjeta utilices. Debería tratarse de un archivo *pkcs11.so o algo así que se instalará con el driver de tu tarjeta.

- Aceptamos y listo.

5. Instalar los certificados de la CA que expide los certificados: Junto con tu tarjeta, o en la página web de la Autoridad Certificadora que haya expedido tu tarjeta, deberías tener enlaces a los certificados raíz.

- Si los tienes descargados, desde la misma ventana de Edición->Preferencias->Avanzado->Cifrado, pulsa sobre Ver certificados. Es posible que en este punto te pida la contraseña de tu tarjeta.

- En la pestaña Autoridades pulsa sobre Importar y elige los certificados que hayas descargado, uno a uno.

- Al importarlos te aparece una ventana con una serie de opciones. Marca todas las opciones y acepta.

6. Utilizar los certificados: Este punto simplemente sería entrar en las páginas con las que vayas a utilizar los certificados. En mi caso, con una tarjeta expedida por ACCV (Autoridad de Certificación de la Comunidad Valenciana), la utilizo para firmar correos con Evolution, presentar la declaración de la renta a través de www.aeat.es, solicitar la vida laboral, etc.

Espero que te sirva de ayuda.

No sé si el servicio que expide la tarjeta que tienes posee una página web con información, pero los manuales que hay en http://www.accv.es están bastante bien (aunque para windows, en linux es muy parecido en el caso de Firefox).

Un saludo

 

+1
0
-1
Imagen de BelRuBo
+1
0
-1

Saludos.

 He seguido la guía atentamente para instalar el lector Omnikey que proporciona la Junta de Andalucía.

Tengo un problema a la hora de cargar el módulo en Firefox. He instalado el driver desde la página de Omnikey y lo que hace es instalar en usr/local/pcsc/drivers/ifdokccid_lnx-3.0.0.bundle/Contents/Linux/ el driver ifdokccid.so. Cuando le digo que carge ese módulo me dice que "No es posible añadir el módulo". ¿Sabe alguien cuál puede ser el problema? Thanks

+1
0
-1
Imagen de vradick
+1
0
-1

Creo que te estás equivocando. El driver que se instala en /usr/local/pcsc/drivers/ es para pcscd. Es el driver del lector, para que pcscd sepa hablar con él y sacar la información de la tarjeta. Lo que necesitas ahora es el driver de la tarjeta que no es el mismo que el del lector. Ese driver es el que tienes que cargar como módulo en el navegador web.

¿Quién expide tu firma? ¿Dónde puedo encontrar los manuales?

Creo que esos certificados los expide la FNMT (si no es así, no sigas este comentario y contesta las preguntas anteriores). En este caso se necesitaba los drivers opensc-ceres. Hace un tiempo parece ser que funcionaban, pero la página (http://opensc-ceres.softwarelibre.org) lleva mucho tiempo caída. Si éste es tu caso ya no puedo ayudarte más, ya que no dispongo de una tarjeta de la FNMT. Aunque analizándola detenídamente tal vez se podría hacer un apaño a opensc para que la admita... pero eso son palabras mayores. En la página de la FNMT solamente hay un enlace a la página que te he referido de opensc-ceres, así que la solución sería preguntarles a ellos directamente, vía correo electrónico o formulario de contacto.

Siento no poder ayudar más.

+1
0
-1
Imagen de BelRuBo
+1
0
-1

Cierto, estaba confundido. La firma la expide la FNMT, y llevo buscando mucho tiempo (desde que visité tu página) el opensc-ceres la página sigue sin funcionar. En el cd que viene con el lector vienen incluídos los drivers de la tarjeta para Linux. En ese tar.gz se incluyen los ficheros libsiecap11.so y libsiecap15.so. Los descomprimo y sigo las instrucciones que vienen en la documentación pero a la hora de cargarlo en Firefox sigue diciendo lo mismo "No se puede cargar el módulo".

La infomación está en:

http://www.juntadeandalucia.es/servicioandaluzdeempleo/oficinavirtual/

y se accede a través del área personal de demandantes. Sólo hay información de cómo instalar los plugins en Firefox para Windows.

He encontrado un paquete debian de opensc-ceres en los repositorios de Guadalinex:

http://v4.guadalinex.org/guadalinex-toro/pool/restricted/o/opensc-ceres/

Y ahora sí carga el módulo que se encuentra en /usr/lib/pkcs11/opensc-pkcs11.so
El problema es que sigue sin dejarme entrar en la oficina virtual de la Junta porque me dice que "no se emcuentran los componentes necesarios". No sé que más puede estar fallando porque el lector funciona bien con pcsc_scan.

Muchas gracias por la ayuda, ¿Alguna sugerencia más para saber qué le puede estar pasando?

+1
0
-1
Imagen de vradick
+1
0
-1

Si te dice que no se encuentran los componentes necesarios es porque la página necesita algo para funcionar que no tienes (java-plugin, javascript habilitado, activex, ...). Si han hecho las cosas bien debería faltarte java-plugin.

Por mi experiencia con los certificados de la Generalitat Valenciana, es mejor tener instalado java versión 1.4.2. En los repositorios debería etar la 1.6, pero hay ciertas páginas que no terminan de ir bien del todo. La ventaja en Gnu/Linux es que puedes tener instaladas varias versiones y cambiar los "alternatives", para utilizar una versión u otra.

La prueba para comprobar que funciona la tarjeta es abrir el gestor de certificados de mozilla. Si te pide el pin de la tarjeta y después de introducirlo te muestra tus certificados, entonces la instalación es correcta. Habría que mirar los componentes que requiere la página en cuestión si lo anterior funciona correctamente.

 

+1
0
-1
Imagen de BelRuBo
+1
0
-1

He cambiado la versión de java que tenia a la 1.4 que es la que recomienda la Junta, he creado el enlace simbólico:

 sudo ln -s /home/XXX/j2re1.4.2_14/plugin/i386/ns610-gcc32/libjavaplugin_oji.so

He copiado los archivos  jss33.jar y libjss3.so como dice en la guía de instalación de la Junta pero cuando se inicia Firefox con la tarjeta metida y quiero ver los certificados se queda bloqueado y la luz del lector no deja de parpadear. He arrancado el demonio pcscd desde la línea de comandos y lo que está haciendo una y otra vez es lo siguiente:

prothandler.c:130:PHSetProtocol() Attempting PTS to T=1
ifdhandler.c:418:IFDHSetProtocolParameters() lun: 0, protocol T=1
ifdhandler.c:1336:extra_egt() Extra EGT patch applied
ifdhandler.c:983:IFDHControl() lun: 0, ControlCode: 0x42000D48
ifdhandler.c:948:IFDHTransmitToICC() lun: 0
ifdhandler.c:948:IFDHTransmitToICC() lun: 0
ifdhandler.c:948:IFDHTransmitToICC() lun: 0
ifdhandler.c:948:IFDHTransmitToICC() lun: 0
ifdhandler.c:948:IFDHTransmitToICC() lun: 0
ifdhandler.c:948:IFDHTransmitToICC() lun: 0
ifdhandler.c:948:IFDHTransmitToICC() lun: 0
ifdhandler.c:841:IFDHPowerICC() lun: 0, action: Reset
prothandler.c:130:PHSetProtocol() Attempting PTS to T=1
ifdhandler.c:418:IFDHSetProtocolParameters() lun: 0, protocol T=1
ifdhandler.c:1336:extra_egt() Extra EGT patch applied
ifdhandler.c:948:IFDHTransmitToICC() lun: 0

...

 Muchas gracias por la ayuda prestada.

 

+1
0
-1
Imagen de vradick
+1
0
-1

Si lees el log que has puesto te darás cuenta que después de una serie de pasos realiza un "Reset" y vuelve a iniciar todos los pasos. Esto puede deberse al módulo que has cargado, que no reconoce del todo bien la tarjeta.

En un principio java no hace falta para que se puedan leer los certificados de la tarjeta (puesto que utiliza opensc). Así que lo mejor es centrarse primero en este punto y dejar de momento el acceso a la oficina virtual de la Junta. También vamos a comprobar que se lean los certificados antes de ponernos con Firefox.

Necesitaría saber qué versiones de paquetes tienes instalados (pcscd, opensc, etc). Y también la salida del comando:

$ pkcs11-tool -O

En mi caso tengo que pasarle el parámetro "--module /ruta/al/modulo/pkcs11.so". En tu caso, siendo opensc, no debería hacer falta. Este comando debería devolverte los certificados presentes en tu tarjeta. Puedes hacer más comprobaciones, como que acepta el pin, mecanismos soportados, etc. (pkcs11-tool --help).

+1
0
-1
Imagen de BelRuBo
+1
0
-1

La versión de pcscd es:

$pcscd --version
pcsc-lite version 1.3.3.

 La versión de opensc es la de guadalinex (opensc-ceres 2.0.1-1-guada1 y opensc-dnie 1.2.1-4-guada3). También tengo instalado opensc 0.11.1 de ubuntu y mozilla-opensc 0.11.1 de ubuntu. Me extraña una cosa y es que en todas ellas pone que es para certificados pkcs#15 y el único módulo que se encuentra en opensc es pkcs11.so que es el que me deja cargar Firefox.

 

Por otra parte he ejecutado  $pkcs11-tool -O obteniendo:

 Error: can't open /var/run/openct/status: No such file or directory
Error: can't open /var/run/openct/status: No such file or directory
Error: can't open /var/run/openct/status: No such file or directory
Error: can't open /var/run/openct/status: No such file or directory
Error: can't open /var/run/openct/status: No such file or directory
card-cardos.c:225:cardos_check_sw: command cannot be used for file structure
iso7816.c:129:iso7816_read_binary: returning with: Card command failed
card.c:439:sc_read_binary: returning with: Card command failed
card.c:424:sc_read_binary: sc_read_binary() failed: Card command failed
pkcs15.c:788:__sc_pkcs15_search_objects: DF parsing failed: Card command failed
error: PKCS11 function C_OpenSession failed: rv = CKR_TOKEN_NOT_PRESENT (0xe0)

Aborting.

 ¿podría ser por que los módulos de opensc-ceres son para pkcs15 y firefox sólo acepta pkcs11? 

+1
0
-1
Imagen de vradick
+1
0
-1

En principio opensc trabaja tanto con pkcs15 como pkcs11.

Los errores de openct no son importantes. Opensc trabaja tanto con pcscd como con openct, así que intenta abrirlo también. No le hacemos caso.

Vamos a ir comprobando por pasos:

1. Comprobamos que opensc reconoce el lector de tarjetas (no muestro los errores de openct, a mí también me aparecen):

$ opensc-tool -l
Readers known about:
Nr. Driver Name
0 pcsc Omnikey CardMan 2020 00 00
1 openct OpenCT reader (detached)
2 openct OpenCT reader (detached)
3 openct OpenCT reader (detached)
4 openct OpenCT reader (detached)
5 openct OpenCT reader (detached)

Como verás a mí me reconoce el lector a través de pcsc. Esto significa que carga el driver correctamente.

2. Comprobamos que opensc reconoce la tarjeta (no muestro los errores de openct):

$ opensc-tool -n 
CardOS M4

3. Si no la reconoce, seguramente habrá que tocar el archivo /etc/opensc/opensc.conf, para configurar qué driver tiene que utilizar según el atr de tu tarjeta:

$ opensc-tool -a
3b:f2:98:00:ff:c1:10:31:fe:55:c8:04:12

4. Recuerdo que el archivo opensc.conf lo modificaba la instalación de opensc-ceres, comprueba que tu atr aparezca en el archivo y que está configurado con las rutas necesarias.

Si no te aclaras, postéame el resultado de los comandos anteriores y tu archivo opensc.conf.

+1
0
-1
Imagen de BelRuBo
+1
0
-1

He realizado los pasos que me has dicho y he obtenido los siguientes resultados (aunque salen errores como tu dices por medio):

1) Nr.    Driver     Name
0      pcsc       OmniKey CardMan 3121 00 00
1      openct     OpenCT reader (detached)
2      openct     OpenCT reader (detached)
3      openct     OpenCT reader (detached)
4      openct     OpenCT reader (detached)
5      openct     OpenCT reader (detached)

2)  CardOS M4

3)  3b:f2:98:00:ff:c1:10:31:fe:55:c8:04:12

4) He vistoopensc.conf y no he encontrado este ATR por ningún lado. ¿cómo habría que configurarlo? QUizás sea eso lo que esté fallando. De nuevo gracias por tu ayuda. 

+1
0
-1
Imagen de vradick
+1
0
-1

Bueno, según los resultados que me indicas la tarjeta que tú tienes es de Siemens. Si te fijas reconoce tu tarjeta del mismo tipo que la mía (tanto el tipo de tarjeta: CardOS m4, como el ATR).

Así que para que funcione necesitarás los drivers de Siemens. No te servirán los de opensc (al menos a mí no me sirven directamente).

Buena noticia: Yo tengo mi tarjeta funcionando con ese tipo de tarjetas, y como yo mis compañeros de oficina que usan linux.

Mala noticia: El driver es propietario y no se puede descargar de prácticamente ningún sitio (si buscas por google ni siquiera puedes descargarte el de Window$). Es más, la licencia incluye una cláusula por la que no puedes colgarlo para descargarlo en ningún sitio. En mi caso lo puedo descargar de la página de ACCV (www.accv.es), pero está dentro de la zona privada, por lo que tienes que acceder con un certificado (lógicamente la primera vez desde window$, ya que el driver sí que viene en el cd de instalación).

Lo único que puedo decirte es que contactes conmigo a través del correo electrónico - vradick _arroba_ gulalug.org - e intentaremos arreglarlo.

+1
0
-1
Imagen de BelRuBo
+1
0
-1

 

+1
0
-1
Imagen de BelRuBo
+1
0
-1

Por fin funciona!!

He instalado los drivers de Siemens para la tarjeta (creo que pueden ser iguales a los que vienen en el CD que te proporciona la junta con el lector). Luego he tenido que crear el siguiente enlace simbólico:

$ sudo ln -s /usr/lib/libpcsclite.so.1.0.0 /usr/lib/libpcsclite.so.0

 

Y posteriormente cargamos la librería en Firefox:

Editar->Preferencias->Avanzado->Cifrado->Dispositivos de seguridad->Cargar->/usr/local/lib/libsiecap11.so

Con esto debería funcionar. He tenido que volver a arrancar el proceso que del lector de tarjetas "pcscd"

$ sudo pcscd -f

 

Podéis acceder al certificado de la tarjeta en la opción de Firefox Editar->Preferencias->Avanzado->Cifrado->Certificados donde te pedirá la clave de la tarjeta para acceder al certificado.

 

Podéis comprobar si funciona correctamente en la página web de la FNMT.Para ello tenéis que tener la tarjeta metida en el lector y dirigirse a esta página:

http://www.cert.fnmt.es/index.php?cha=cit&sec=verify_state&fpage=1 

No lo habría conseguido sin la ayuda de Vradick!! Gracias!!

+1
0
-1
Imagen de niquitonipongo
+1
0
-1

Pues no sabeis como me alegro de que tengais la cabeza tan despejada.

He estado siguiendo los pasos que veniais señalando y yo tambien he conseguido que el lector y la tarjeta funconen correctamente..

Muchisimas gracias a los dos.

Un saludo.

 

PD.- ¿Alguno se atreve a dejar aqui un manual completo?

 

+1
0
-1
Imagen de neonigma
+1
0
-1

Hola, he creado una miniguía para aquel que la necesite, ya que a mí también me ha ayudado mucho este hilo, ya que me quedé en la parte de instalación de drivers del lector y ya no sabía seguir.

Sin embargo, una vez leído este hilo, ya pude disfrutar del lector criptográfico y "sellar el paro" desde casita y en Ubuntu, para no tener que cambiar de SO.

En fin, el manual que he creado lo podéis encontrar en mi blog personal: http://neonigma.freehostia.com/?p=120

No lo pongo aquí porque, a pesar de que está probado, yo ya tenía los drivers instalados, y hasta que alguien que empiece desde cero no lo testee no es posible decir que es 100% fiable. Nos quedamos, de momento, con el 99%.

Además, así podremos ir completando con los errores extraños que siempre acaban apareciendo.

Un saludo.

+1
0
-1
Imagen de voivod10
+1
0
-1

Hola

He seguido el tutorial, pero al final del 3r paso, me pone esto

root@ubuntu:/# opensc-tool -l
opensc-tool: error while loading shared libraries: /usr/lib/libpcsclite.so.1: file too short

No se me ocurre que puede ser, porque he seguido y repasado todos los pasos.

El certificado es de ACCV, y el lector de tarjetas es un CardMan 3021 de Omnikey.

 Si os hacen falta más datos, decídmelo, por favor.

Un saludo, y gracias

+1
0
-1
Imagen de niquitonipongo
+1
0
-1

Excelente en contenido y explicaciones.

Un saludo 

+1
0
-1
Imagen de niquitonipongo
+1
0
-1

Excelente en contenido y explicaciones.

Un saludo 

+1
0
-1
Imagen de neonigma
+1
0
-1

Gracias, espero que ayude ;).

Un saludo.

+1
0
-1
Imagen de jasvazquez
+1
0
-1

Por desgracia el manual indicado ya no está disponible; si alguien lo necesita existe otro manual para quien quiera saber cómo configurar la smartcard con su certificado en Linux.

Un saludo

Disfruta y aprende cosas nuevas cada día con las vivencias de un informático metido a profesor.
http://andalinux.wordpress.com

+1
0
-1

Disfruta y aprende cosas nuevas cada día con las vivencias de un informático metido a profesor.
Blog: Informático de Guardia
Twitter: Charlamos en Twitter

Imagen de penovales
+1
0
-1

Hola a todos
Tengo un problema que ya no se como resolver, espero ke me ayuden:
El asunto es ke tengo un lector de tarjetas CardMan OmniKey 3x21 al cual ya le instale el driver y no se si esta funcionando correctamente(1), pues me pasa que cuando le pongo la tarjeta el plugin ke tengo en el netbeans no la reconoce.
Agradeceria ayuda de cualkier tipo, un manual, experiencias propias, algo
gracias de antemano

+1
0
-1
Imagen de emiliosm
+1
0
-1

 he seguido al pie de la letra la instalacion para la tarjeta que da el SAE de la Junta de Andalucia. Todo funciona perfectamente pero...

Cuando intento verificar el certificado en la FNMT me da error de que no puede cifrar error -12222

Tambien me pide la contraseña 3 veces 

 

 

 

usuario Ubuntu #106517

+1
0
-1

 

 

 

 

usuario Ubuntu #106517

Imagen de medicucho
+1
0
-1

Señoras y señores, yo no puedo hacer nada de nada. basicamente tengo 2 problemas:

1.-no se cómo importar los certificados, en explorer no tengo ese problema pero como firefox y con netscape me pide buscar los archivos pkcs#12 y no sé donde.

 2.-el maldito java, instalado como se dice tanto en mozilla como en explorer y sigue dicendome que no está y que lo instale y no se que demosnios....

 

en fin, que yo vendiéndole las ventajas de ubuntu a mi mujer y claro, no se las cree 

+1
0
-1

Paciencia con los novatos.....

Imagen de thediabl0
+1
0
-1

es vejete el post pero bueno... he seguido los pasos de esta web http://www.nacho-alvarez.es/?p=120 donde al final indican este post, pero al intentar cargar el dispositivo de seguridad en firefox, me dice que no se puede cargar ese modulo. A que puede ser debido?

+1
0
-1
Imagen de xmgz
+1
0
-1

pues seguramente te faltará alguno de los componentes que se indican en este hilo (los del inicio)

http://www.ubuntu-es.org/index.php?q=node/103785

instalalos y seguramente ya no te dará ese error. Yo lo instalé en un pc siguiendo esa guía sin problema, y luego en otro pasé de la guía creyendo que era todo muy fácil y me olvidé de instalar lo necesario. Una vez hecho funcionó sin problema.

Aprovecho el hilo pues está relacionado:

Lo que si necesito ayuda es acerca del JRE (entorno java) que se debe utilizar.
Las páginas que no requieren java para autentificarte (aeat, mibanco, ...) no dan ningún problema, EN MI CASO.
Pero por ejemplo si intentas ver los puntos del carné de conducir en dgt.es o entrar en ingdirect... el navegador carga el java que tienes instalado pero no conecta correctamente.
Como decís más arriba, algunas webs utilizan un java más antiguo (1.4) y actualmente vamos por la 1.6.10....

Por favor, podría alguien explicarnos si hay que activar algún tipo "de compatibilidad" entre versiones, o bien la forma de instalar los dos entornos java (pudiendo elegir cuál usar).

Gracias.

+1
0
-1

****************************************************
Gracias a tod@s l@s que trabajan para mejorar Ubuntu

Imagen de niquitonipongo
+1
0
-1

Mediante consola utiliza el siguiente comando:

sudo update-alternatives --config java

Elige la versión de java que necesites y ya está.

Te dejo un enlace, completo, con posibles respuestas a la instalacion y uso del lector omnikey.

http://www.nacho-alvarez.es/?p=120

Un saludo

+1
0
-1