viernes 19 de junio de 2009

Lector de huellas dactilares biométrico UPEK en Ubuntu

Llevo un año utilizando Ubuntu en mi VAIO TZ3 y todavía no había configurado el lector de huellas dactilares. A continuación os explicaré como hacerlo en la versión 9.04 de Ubuntu.


Gracias a Wolfgang Ullrich que ha creado el proyecto Fingerprint-GUI podemos utilizarlo a la perfección!

1- Lo primero que debemos hacer es descargar los binarios de Fingerprint-GUI, podeis descargar los de la versión 0.10 aquí.

2- Antes de comezar la instalación aseguraros de que teneis instalados los siguientes paquetes en Ubuntu:
- libfakekey0
- libfprint0

3- Ejecutar desde la carpeta de binarios descomprimidos
./install.sh --with-upek
si teneis todas las librerias dependientes instaladas, no debería dar ningún problema.

4. Carga del módulo: para el funcionamiento se utiliza el módulo uinput, así que para que cargue durante el arranque lo agregaremos al archivo /etc/modules.
Si no queremos reiniciar el sistema, solo por esta vez lo arrancaremos mediante
modprobre uinput

5. Ahora ya deberiais ser capaces de adquirir vuestras muestras de huellas mediante el comando:
fingerprintGUI
En caso de tener problemas de permisos deberemos de identifcar el dispositivo y modificarlos, por ejemplo:
lsusb
Bus 001 Device 003: ID 147e:1000
sudo chown 666 /dev/bus/usb/001/003


6. Por último vamos a configurar los archivos de autentificación:
Copiamos el archivo /etc/pam.d/common-auth llamandolo como sigue:
cp /etc/pam.d/common-auth /etc/pam.d/common-auth-fingerprint

Editamos y hacemos los siquientes cambios:
- Agregamos en la primera línea:
auth sufficient libpam_fingerprint.so debug
- Encontramos la línea que contiene pam_unix.so y le agregamos
try_first_pass para que quede de la siguiente forma:

auth [success=1 default=ignore] pam_unix.so try_first_pass
nullok_secure


7- Ahora vamos a hacer que los diferentes servicios de autentificación
de Ubuntu llamen a FingerprintGUI


- su:
Editamos /etc/pam.d/su y modificamos para que contenga:
@include common-auth-fingerprint
- login

Editamos
/etc/pam.d/login y modificamos para que contenga:
@include common-auth-fingerprint
- sudo

Editamos /etc/pam.d/sudo y modificamos para que contenga:
@include common-auth-fingerprint
- gdm
Mediante el rpograma gdmsetup desactivamos time login y
facebrowser

Editamos /etc/pam.d/sudo y modificamos para que contenga:
@include common-auth-fingerprint

Si todo va bien cada vez que utiliceis alguna de estas aplicaciones
saltará la ventana para que arrastreis el dedo.


Ya sois biométricos!!! ^o^