| View previous topic :: View next topic |
| Author |
Message |
Arctic Apprentice


Joined: 04 Jul 2011 Posts: 168
|
Posted: Sat May 12, 2012 11:57 pm Post subject: [Howto] Dnie [Acceso y firma] |
|
|
DNI-e
Este HowTo permite conseguir de manera rápida y sencilla el funcionamiento de los lectores DNI-e bajo sistemas Linux de (32 y 64 bits) .
Permite la autentificación y firma electrónica en cualquier Web que sea compatible con DNI-e
El último ebuild que he creado ,resuelve automaticamente las USES y dependencias necesareas ,tambien incluye intruciones que aparecerán al final de la compilación para la correcta configuración por parte del admistrador.El ebuild no se encuentra actualmente dentro del portage oficial de gentoo, si no sabes instalar un portage local ,he agregado un pequeño manual mas abajo llamado Portage Local.
Con el nuevo ebuild , podeis saltarar directamente a Portage Local ,ya que esta automatizado por el ebuild.
Tambien incluyo instruciones para los usuarios que no usen Gentoo Linux o no desean usar portage para instalar DNI-e ,en ese caso saltar a Instalación sin Portage ,pero recordar que necesitais los paquetes del apartado Lector.
Ebuild :
| Code: |
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
EAPI=3
DESCRIPTION="Driver OpenDNIe para el DNI electrónico"
HOMEPAGE="http://opendnie.cenatic.es"
SRC_URI="http://forja.cenatic.es/frs/download.php/1332/opensc-opendnie-0.12.2.tar.gz"
LICENSE="GPL"
SLOT="0"
KEYWORDS="~amd64"
IUSE="udev usb"
DEPEND="
sys-apps/pcsc-lite
app-crypt/ccid
"
RDEPEND="${DEPEND}"
S="${WORKDIR}/opensc-0.12.2"
src_configure() {
econf
}
src_compile() {
emake || die
}
src_install() {
emake DESTDIR="${D}" install || die "make failed"
}
pkg_postinst() {
ewarn "Recuerda inciar el servicio:"
ewarn ""
ewarn "#/etc/init.d/pcscd start"
ewarn ""
ewarn "y añadirlo de modo permanente:"
ewarn ""
ewarn "#rc-update add pcscd default"
ewarn ""
ewarn "No olvides añadir tu usuario al grupo pcscd y reiniciar sesión:"
ewarn ""
ewarn "#gpasswd -a vuestro_usuario pcscd"
ewarn ""
ewarn "Para mas información, preguntas o problemas consulta esta url:"
ewarn "http://forums.gentoo.org/viewtopic-t-923326.html"
ewarn ""
ewarn ""
}
|
Lector:
Yo utilizo un lector bit4id , que es compatible con Windows, MacOS y linux.Lo he probado en los 3 sistemas operativos y funciona perfectamente.Lo he adquirido en unos rgandes almacenes por un precio de 12 euros.
Para instalarlo tenemos que emreger 2 paquetes , editar vuestro make.conf para emergerlo con las mismas USES que yo.
| Code: | emerge -pv pcsc-lite ccid
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild R ] sys-apps/pcsc-lite-1.8.2 USE="udev -libusb" 536 kB
[ebuild R ] app-crypt/ccid-1.4.5 USE="usb -twinserial" 451 kB
Total: 2 packages (2 reinstalls), Size of downloads: 987 kB
|
despues :
| Code: | # /etc/init.d/pcscd start
# rc-update add pcscd default |
No olvideis añadir vuestro usuario al grupo pcscd
| Code: | | gpasswd -a vuestro_usuario pcscd |
ya lo tenemos funcionando y cargado automaticamente en el arranque.
En el caso de mi lector , no hace falta instalar nada para comprobar que esta correctamente instalado, solo introducir el DNI y veremos que le led verde empieza a parpadear y se queda fijo ,cosa que antes de instalar los drivers no sucedia ,si quereis aclarar mas acerca de esto podeis leer el manual que trae o visitar la web del fabricante .
El otro metodo es el que cita Pcmaster en su Minihowto :
| Quote: | Con esto, el sistema ya debería reconocer el lector. Una forma rápida de saber si ha sido reconocido es, desde las X, usar el programa usbview: el nombre de los dispositivos que no tienen el correspondiente controlador cargado aparece en rojo. Si todo está correcto aparecerá en negro.
Controlador no cargado: http://yfrog.com/0xlectorkoj--- Controlador cargado: http://yfrog.com/9flectorokj |
Portage Local:
El ebuild lo instalais en la siguiente ruta que no deja de ser un overlay local :
| Code: | | /usr/local/portage/dev-libs/opensc-dnie/opensc-dnie-1.4.7.ebuild |
accedeis al directorio que contiene el ebuild arriba mencionado y escribis esto:
| Code: | | ebuild opensc-dnie-1.4.7.ebuild digest |
en vuestro /etc/make.conf debeis de tener esta linea:
| Code: |
PORTDIR_OVERLAY="/usr/local/portage" |
Instalación sin Portage:
Si quereis instalar sin utilizar portage , bien porque os gusta hacerlo a la antigua usanza o bien porque el ebuild ha dejado de funcionar , descargais este archivo :
http://forja.cenatic.es/frs/download.php/1332/opensc-opendnie-0.12.2.tar.gz
Si por cualquier motivo el enlace no funcionase la pagina oficial es esta:
http://opendnie.cenatic.es
descomprimis el archivo descargado, entrais en el directorio descomprimido como root:
Configuración del navegador (fireFox)
Una vez instalado el ebuild y sus dependencias o compilado a mano las fuentes , añadis el certificado desde firefox como narra el pdf de ayuda oficial:
| Quote: | 3.2.2
Manualmente
Se debe ejecutar el Firefox y a través del menú “Preferencias / Avanzado / Cifrado /
Dispositivos de seguridad” se añade un nuevo dispositivo. La ruta que se debe indicar es
/Library/OpenSC/lib/opensc-pkcs11.so
Esto se puede realizar arrastrando el fichero
/Library/Opensc/Share/web/instala_modulo.htm sobre el navegador.
También es necesario importar en el navegador el certificado raíz del DNIe. Esto se
puede realizar pinchando en el enlace que aparece después de instalar el módulo.
|
En nuestro caso gentoo lo instala en /usr/lib64 o /usr/lib
Una vez agregado , ya estamos casi en posicion de probarlo solo faltan unos detalles que son muy importantes :
Necesitamos un navegador que maneje certificados , en este caso elegimos firefox.
Para poder firmar en firefox hace falta una serie de cambios:
Primero:
| Quote: | Escriba "about:config" (sin comillas y sin http o www. delante) en la barra de direcciones donde escribe habitualmente las direcciones de las páginas web. Pulse la tecla "Intro" en el teclado; en función de la versión del navegador que tenga instalada, puede mostrarse un mensaje de advertencia que deberá aceptar para continuar. Se mostrará una página con un listado de preferencias en la parte inferior. Sobre éste aparecerá una línea en blanco con el nombre "Filtro". En este campo escriba la palabra "signed" (también sin comillas) y pulse "Intro" en el teclado de nuevo.
La lista habrá quedado reducida a una sola preferencia (signed.applets.codebase_principal_support). A la derecha, debajo de la columna "Valor" aparecerá "false" o "true". Asegúrese de que el valor está en "true" y si aparece "false" haga doble clic sobre la línea para que el valor cambie a "true", que es el correcto. |
Segundo:
| Quote: | 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 clic 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. |
En nuestro caso el cetificado no aparece como FNMT sino como Dirección de Policia , salvo esa incidencia este texto lo he sacado de la agencia tributaria , lo podeis seguir con ilustraciones aqui :
http://soporte.aeat.es/aplicaciones/A3Cknowledge.nsf/vwPreguntasLecturaContribuyentes/14272747624E1F3DC12575F5005A4009?OpenDocument
Lo he puesto anteriormente en quotes para dejar constancia en el foro si modificaban la url.
Tercero:
Esto es algo que no viene en ninguna lado , es renegociar los certificados :
Tecleamos de nuevo about:config en la barra de direcciones de firefox y modificamos:
| Code: | | “security.ssl.allow_unrestricted_renego_everywhere__temporarily_available_pref”: |
lo dejamos en True haciendo click encima .
Bueno ahora ya tenemos todo listo para hacer la prueba de acceso y firma:
Accedemos a la pagina oficial de prueba de DNIe:
http://www.dnielectronico.es/como_utilizar_el_dnie/verificar.html
Introducimos el dnie y clickamos el enlace de abajo de todo:
Nos pedirá la contraseña de nustro DNI ,la introducimos y ya estamos identificados , despues nos proporcionara una prueba de firma , escribimos cualquier cosa que nos parezca y le damos a firmar , nos aparecerá una nueva ventana , mas completa que la anterior , introducimos la contraseña de nuevo , pero antes de darle a firmar cambiar el cetificado en esa misma ventana ,ya que existen dos, uno es de acceso y otro de firma, no se porque narices carga predeterminado el de acceso y da error al firmar , hacerlo y vereis que la firma se realiza con éxito.
Ya teneis vuestro DNIe 100% funcional en Gentoo linux. _________________ ln -s /user/artic /user/arctic
Last edited by Arctic on Sun Feb 17, 2013 1:48 am; edited 10 times in total |
|
| Back to top |
|
 |
johnlu Apprentice


Joined: 22 Aug 2004 Posts: 213 Location: Córdoba, España
|
Posted: Mon May 14, 2012 10:31 pm Post subject: |
|
|
Bien, parece que con tu guía se resuelve el problema que tenía yo con la firma con la verificación en la web oficial. En cuanto tenga un poco de tiempo probaré con tus indicaciones a ver si puedo solucionarlo.
¡Muchas gracias Arctic! _________________ http://www.juanluperez.com |
|
| Back to top |
|
 |
majoron Apprentice


Joined: 12 Oct 2005 Posts: 160 Location: Frankfurt
|
Posted: Wed Jun 27, 2012 12:16 pm Post subject: |
|
|
Hola,
Muchas gracias, Arctic por el howto. He probado a hacer
| Code: | | emerge -v opensc-dnie |
pero me da error:
| Code: | >>> Install opensc-dnie-1.4.7 into /var/tmp/portage/dev-libs/opensc-dnie-1.4.7/image/ category dev-libs
make -j5 DESTDIR=/var/tmp/portage/dev-libs/opensc-dnie-1.4.7/image/ install
make: *** No hay ninguna regla para construir el objetivo `install'. Alto.
emake failed
* ERROR: dev-libs/opensc-dnie-1.4.7 failed (install phase):
* make failed
*
* Call stack:
* ebuild.sh, line 85: Called src_install
* environment, line 151: Called die
* The specific snippet of code:
* emake DESTDIR="${D}" install || die "make failed"
*
* If you need support, post the output of 'emerge --info =dev-libs/opensc-dnie-1.4.7',
* the complete build log and the output of 'emerge -pqv =dev-libs/opensc-dnie-1.4.7'.
* This ebuild is from an overlay named 'x-portage': '/usr/local/portage/'
* The complete build log is located at '/var/log/portage/dev-libs:opensc-dnie-1.4.7:20120627-113709.log'.
* The ebuild environment file is located at '/var/tmp/portage/dev-libs/opensc-dnie-1.4.7/temp/environment'.
* S: '/var/tmp/portage/dev-libs/opensc-dnie-1.4.7/work/opensc-1.4.7'
>>> Failed to emerge dev-libs/opensc-dnie-1.4.7, Log file:
>>> '/var/log/portage/dev-libs:opensc-dnie-1.4.7:20120627-113709.log' |
En efecto, he ido al directorio de trabajo
| Code: | | /var/tmp/portage/dev-libs/opensc-dnie-1.4.7/work/opensc-1.4.7 |
y veo que no se ha creado el Makefile.
He intentado modificar el ebuild, pero no logro que funcione.
He añadido un bloque
| Code: | src_compile() {
econf
emake || die
}
|
Pero sigue sin ir. Esta vez dice:
| Code: | >>> Compiling source in /var/tmp/portage/dev-libs/opensc-dnie-1.4.7/work ...
* QA Notice: econf called in src_compile instead of src_configure
* ERROR: dev-libs/opensc-dnie-1.4.7 failed (compile phase):
* no configure script found
*
* Call stack:
* ebuild.sh, line 85: Called src_compile
* environment, line 143: Called econf
* phase-helpers.sh, line 472: Called die
* The specific snippet of code:
* die "no configure script found"
*
* If you need support, post the output of 'emerge --info =dev-libs/opensc-dnie-1.4.7',
* the complete build log and the output of 'emerge -pqv =dev-libs/opensc-dnie-1.4.7'.
* This ebuild is from an overlay named 'x-portage': '/usr/local/portage/'
* The complete build log is located at '/var/log/portage/dev-libs:opensc-dnie-1.4.7:20120627-120420.log'.
* The ebuild environment file is located at '/var/tmp/portage/dev-libs/opensc-dnie-1.4.7/temp/environment'.
* S: '/var/tmp/portage/dev-libs/opensc-dnie-1.4.7/work/opensc-1.4.7'
>>> Failed to emerge dev-libs/opensc-dnie-1.4.7, Log file:
>>> '/var/log/portage/dev-libs:opensc-dnie-1.4.7:20120627-120420.log'
|
He probado otras cosas, como poner la llamada a econf en un bloque "src_configure()", y mil marranadas más, pero es la primera vez que trasteo con ebuilds y estoy dando palos de ciego.
Lo he instalado a mano y parece que me ha funcionado, pero me ha frustrado un poco no saber usar correctamente el ebuild.
¿Será algo mal configurado en el overlay?
¿Tendá algo que ver el hecho de que la versión del ebuild y la del paquete son distintas (aunque veo que tu ebuild parece tener en cuenta eso)?
En cualquier caso muchas gracias y saludos. _________________ Computers are like air conditioners, they stop working properly if you open Windows |
|
| Back to top |
|
 |
majoron Apprentice


Joined: 12 Oct 2005 Posts: 160 Location: Frankfurt
|
Posted: Wed Jun 27, 2012 12:23 pm Post subject: |
|
|
Hola de nuevo,
He seguido probando y al final lo he resuelto. Al menos en mi caso el siguiente ebuild funciona:
| Code: | # Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
EAPI=3
DESCRIPTION="Driver OpenDNIe para el DNI electrónico"
HOMEPAGE="http://opendnie.cenatic.es"
SRC_URI="http://forja.cenatic.es/frs/download.php/1332/opensc-opendnie-0.12.2.tar.gz"
LICENSE="GPL"
SLOT="0"
KEYWORDS="~amd64"
IUSE=""
DEPEND=""
RDEPEND="${DEPEND}"
S="${WORKDIR}/opensc-0.12.2"
src_configure() {
econf
}
src_compile() {
emake || die
}
src_install() {
emake DESTDIR="${D}" install || die "make failed"
}
|
Perdón por las molestias y gracias de nuevo.
Saludos. _________________ Computers are like air conditioners, they stop working properly if you open Windows |
|
| Back to top |
|
 |
Arctic Apprentice


Joined: 04 Jul 2011 Posts: 168
|
Posted: Wed Jun 27, 2012 10:54 pm Post subject: |
|
|
Me alegro de que solucionases el problema
Un saludo _________________ ln -s /user/artic /user/arctic |
|
| Back to top |
|
 |
Arctic Apprentice


Joined: 04 Jul 2011 Posts: 168
|
Posted: Thu Aug 02, 2012 5:41 pm Post subject: |
|
|
Actualización:
Nuevo ebuild ,que resuelve dependencias y solicita USES de modo automatico, tambien nos muestra un minihowto al final de la compilación para que no olvidemos detalles importantes.
Salu2 _________________ ln -s /user/artic /user/arctic |
|
| Back to top |
|
 |
Arctic Apprentice


Joined: 04 Jul 2011 Posts: 168
|
Posted: Sun Feb 17, 2013 1:51 am Post subject: |
|
|
Actualización en ebuild:
Debido a cambios en la ubicación del archivo que descarga el ebuild, lo he actualizado con la nueva URL.
Salu2 _________________ ln -s /user/artic /user/arctic |
|
| Back to top |
|
 |
cameta l33t


Joined: 04 Aug 2004 Posts: 689
|
Posted: Sat Mar 02, 2013 7:19 pm Post subject: |
|
|
Por cierto buenas noticias: He podido renovar las letras del tesoro en la web del tesoro mediante Linux y el certificado de la FNMT y no he tenido que hacerlo en windows como hasta ahora. El sistema de firma es ahora con Java y no con el asqueroso control de active X.
Supongo que tambien debera de funcionar el DNIe pero no he podido comprobarlo ya que no tengo ninguno. _________________ Si algo falla LEE el jodido manual, Si sigue fallando LEE BIEN el jodido manual. |
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|