Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[Howto] Dnie [Acceso y firma]
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Spanish
View previous topic :: View next topic  
Author Message
Arctic
Apprentice
Apprentice


Joined: 04 Jul 2011
Posts: 178

PostPosted: Sat May 12, 2012 11:57 pm    Post subject: [Howto] Dnie [Acceso y firma] Reply with quote

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="https://forja.cenatic.es/frs/download.php/file/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:

Code:
./configure


Code:
make


Code:
make install


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 Wed Jun 12, 2013 7:02 pm; edited 11 times in total
Back to top
View user's profile Send private message
johnlu
Apprentice
Apprentice


Joined: 22 Aug 2004
Posts: 242
Location: Córdoba, España

PostPosted: Mon May 14, 2012 10:31 pm    Post subject: Reply with quote

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
View user's profile Send private message
majoron
Apprentice
Apprentice


Joined: 12 Oct 2005
Posts: 191
Location: Frankfurt

PostPosted: Wed Jun 27, 2012 12:16 pm    Post subject: Reply with quote

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
View user's profile Send private message
majoron
Apprentice
Apprentice


Joined: 12 Oct 2005
Posts: 191
Location: Frankfurt

PostPosted: Wed Jun 27, 2012 12:23 pm    Post subject: Reply with quote

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
View user's profile Send private message
Arctic
Apprentice
Apprentice


Joined: 04 Jul 2011
Posts: 178

PostPosted: Wed Jun 27, 2012 10:54 pm    Post subject: Reply with quote

Me alegro de que solucionases el problema :)


Un saludo
_________________
ln -s /user/artic /user/arctic
Back to top
View user's profile Send private message
Arctic
Apprentice
Apprentice


Joined: 04 Jul 2011
Posts: 178

PostPosted: Thu Aug 02, 2012 5:41 pm    Post subject: Reply with quote

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
View user's profile Send private message
Arctic
Apprentice
Apprentice


Joined: 04 Jul 2011
Posts: 178

PostPosted: Sun Feb 17, 2013 1:51 am    Post subject: Reply with quote

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
View user's profile Send private message
cameta
l33t
l33t


Joined: 04 Aug 2004
Posts: 696

PostPosted: Sat Mar 02, 2013 7:19 pm    Post subject: Reply with quote

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
View user's profile Send private message
Arctic
Apprentice
Apprentice


Joined: 04 Jul 2011
Posts: 178

PostPosted: Wed Jun 12, 2013 7:04 pm    Post subject: Reply with quote

Actualizada la URL en el ebuild.
La nueva url usa cifrado, la posteo aqui por si alguien la quiere utilizar para descarga directa:

https://forja.cenatic.es/frs/download.php/file/1332/opensc-opendnie-0.12.2.tar.gz
_________________
ln -s /user/artic /user/arctic
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Spanish All times are GMT
Page 1 of 1

 
Jump to:  
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