Contenu | Rechercher | Menus
Selon les tags présents sur cette page, celle-ci est ancienne et ne contient plus d'informations sur une des versions supportées d'Ubuntu.
Apportez votre aide…

Thinkfinger

Pour faire fonctionner le lecteur d'empreintes digitales, on utilise le logiciel thinkfinger. Il a été originellement conçu pour les portables IBM Thinkpad, mais il fonctionne bien sûr avec les autres marques.

D'autre projet visant à améliorer le support des lecteurs biométriques existe sous Linux comme FPrint.

Avant de vous lancer dans l'installation du pilote, veuillez lire le dernier paragraphe (Problèmes connus) de cette page afin d'être certain que vous désirez utiliser le lecteur. En effet, il y a certaines choses qui ne fonctionnent pas et qui pourraient dérouter un débutant.

Il est nécessaire de remarquer, toutefois, qu'il est tout à fait possible de configurer le lecteur d'empreintes digitales pour un utilisateur et de laisser les autres utilisateurs de l'ordinateur taper leur mot de passe comme précédemment (attention, on parle d'utilisateurs au sens Unix du terme, si deux personnes utilisent la même session, on parle d'un seul utilisateur!).

Installation

Sous hardy et les versions suivantes, vous pouvez directement installer les paquets thinkfinger-tools libpam-thinkfinger sans rajouter de dépots. La dernière version est incluse dans ubuntu 8.04

Ajoutez le dépôt :

deb     http://ppa.launchpad.net/jldugger/ubuntu gutsy main restricted universe multiverse
deb-src http://ppa.launchpad.net/jldugger/ubuntu gutsy main restricted universe multiverse

Installez le paquet thinkfinger-tools libpam-thinkfinger apt://thinkfinger-tools apt://libpam-thinkfinger.

Le paquet libpam-thinkfinger (optionnel) vous permettra d'utiliser le lecteur d'empreinte au quotidien (par l'intermédiaire de PAM) tandis que le premier apporte les outils pour utiliser le lecteur.

Essais

Vous pouvez utiliser les 2 commandes suivantes pour vérifier le fonctionnement du lecteur :

sudo tf-tool --acquire
sudo tf-tool --verify

Voici un exemple d'utilisation :

ploum@spoutnik:~$ sudo tf-tool --acquire

ThinkFinger 0.2.2 (http://thinkfinger.sourceforge.net/)
Copyright (C) 2006, 2007 Timo Hoenig <thoenig@suse.de>

Initializing... done.
Please swipe your finger (successful swipes 3/3, failed swipes: 0)... done.
Storing data (/tmp/test.bir)... done.
ploum@spoutnik:~$ sudo tf-tool --verify

ThinkFinger 0.2.2 (http://thinkfinger.sourceforge.net/)
Copyright (C) 2006, 2007 Timo Hoenig <thoenig@suse.de>

Initializing... done.
Please swipe your finger (successful swipes 1/1, failed swipes: 0)... done.
Result: Fingerprint does match.

Configuration

sous hardy et ultérieurs, la configuration se résume à lancer

sudo /usr/lib/pam-thinkfinger/pam-thinkfinger-enable

qui fera les actions nécessaires

PAM

Il faut maintenant configurer PAM. Pour cela, il faut modifier le fichier /etc/pam.d/common-auth:

sudo gedit /etc/pam.d/common-auth

Ajoutez y la ligne suivante avant la ligne contenant pam_unix.so :

auth    sufficient      pam_thinkfinger.so

Rajouter try_first_pass à la ligne contenant pam_unix.so :

auth    required    pam_unix.so try_first_pass nullok_secure

Bug d'installation

Un petit bug : Il faut faire un lien symbolique :

 sudo ln -s /etc/pam_thinkfinger/ /usr/local/etc/pam_thinkfinger 

Module uinput

Il faut veiller à ce que le module uinput soit chargé dans le noyau. Pour ce faire, il faut le rajouter dans le fichier /etc/modules

  • Ouvrez /etc/modules. Rajoutez uinput à la fin. Sauvegardez et quittez.

Pour la session en cours, il est toujours possible de charger le module a la main avec :

sudo modprobe uinput

Ajouter des empreintes

Sous Ubuntu Hardy 8.04

Le fichier .thinkfinger.bir généré par la commande suivante servira à vous authentifier lorsque vous passez votre doigt sur le lecteur :

$ sudo tf-tool --acquire

Sous Ubuntu Gusty 7.10 et antérieur

Maintenant on peut enregistrer les empreintes, en utilisant tf-tool. Par chaque utilisateur, lancez la commande :

 sudo tf-tool --add-user nom_de_l_utilisateur 

Il vous sera demandé de passer 3 fois de suite le doigt dans le lecteur (pas trop vite sinon ça ne marche pas).

Voici un exemple d'utilisation :

$ sudo tf-tool --add-user fabien

ThinkFinger 0.3 (http://thinkfinger.sourceforge.net/)
Copyright (C) 2006, 2007 Timo Hoenig <thoenig@suse.de>

Initializing... done.
Please swipe your finger (successful swipes 3/3, failed swipes: 11)... done.
Storing data (/etc/pam_thinkfinger/fabien.bir)... done.
Setting ACL on aquired file: /etc/pam_thinkfinger/fabien.bir.
Unable to set ACL of aquired file: /etc/pam_thinkfinger/fabien.bir: Operation not supported

Utilisation

Pour tester, lancez une application avec sudo, qui vous dira «password or swipe finger». Passez votre doigt dans le lecteur au lieu de taper le mot de passe.

Vous pourrez de même passer votre doigt lorsque le gestionnaire de session (gdm) vous demandera votre mot de passe. Remarque : ce dernier n'affiche pas « mot de passe ou lecteur d'empreinte » ou quelque chose comme ça.

Le lecteur d'empreinte pourra être utilisé par toutes les applications utilisant PAM.

Problèmes connus

Intrepid Ibex - Jaunty Jackalope

Sur mon IBM T43p, j'ai eu la mauvaise surprise de découvrir que mon lecteur digital ne fonctionnait plus. En fait, il fallait faire "enter" après avoir passer son empreinte sur le lecteur ! Heureusement pour nous Jon Oberheide a proposé un patch. Vous pouvez ajouter son dépôt launchpad

Pour Intrepid Ibex :

# Patch pour thinkfinger reader
deb http://ppa.launchpad.net/jon-oberheide/ubuntu intrepid main
deb-src http://ppa.launchpad.net/jon-oberheide/ubuntu intrepid main

Pour Jaunty Jackalope :

# Patch pour thinkfinger reader
deb http://ppa.launchpad.net/jon-oberheide/ppa/ubuntu jaunty main
deb-src http://ppa.launchpad.net/jon-oberheide/ppa/ubuntu jaunty main

Pour Jaunty Jackalope, importer la clé comme suit :

sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xf2a12fabe936a7bbdc4ea33351db180d1323e149  

Puis mettre à jour et tout rentre dans l'ordre.

sudo apt-get update && sudo apt-get dist-upgrade

GKSudo

Dans les dernières mises à jour, la fenêtre de GKSudo (le dialogue sur fond noir demandant le mot de passe pour lancer, par exemple, Synaptic) apparait bien mais le texte ne demande que le mot de passe. Ne faites pas confiance à cette erreur qui est volontairement créée pour éviter un bug précédent et passez votre doigt sur le lecteur, ça fonctionnera parfaitement.

Sortie de l'écran de veille

Cette manipulation n'est pas "propre" mais est le seul moyen de déverouiller l'écran en passant son doigt sur le lecteur. Elle devra sans doute être répétée après chaque mise à jour de udev.

Tout d'abord créez le fichier /etc/udev/rules.d/60-thinkfinger.rules (avec les droits de superutilisateur) et copiez-y ceci :

#
# udev rules file for the thinkfinger fingerprint scanner gives access to the fingerprint reader to those in the "fingerprint" group
#
# Taken from:
#  http://www.thinkwiki.org/wiki/How_to_enable_the_fingerprint_reader_with_ThinkFinger
# which was taken and modified from:
#  http://article.gmane.org/gmane.linux.drivers.thinkfinger/329

SYSFS{idVendor}=="0483", SYSFS{idProduct}=="2016", SYMLINK+="input/thinkfinger-%k", MODE="0660", GROUP="fingerprint"
KERNEL=="uinput", MODE="0660", GROUP="fingerprint"

Ensuite nous allons créer le groupe des utilisateurs pouvant utiliser le lecteur d'empreinte digitale, y ajouter l'utilisteur toto (adaptez selon votre cas) et finalement donner le droit à l'utilisateur de lire le fichier décrivant son empreinte digitale (seul root peut le faire en principe).

sudo groupadd fingerprint
sudo gpasswd -a toto fingerprint
sudo chown toto:root /home/toto/.thinkfinger.bir
sudo chmod 400 /home/toto/.thinkfinger.bir

Plusieurs personnes sur la même session

Si chaque personne utilise une session différente, pas de problème. Par contre, si deux personnes utilisent la même, une seule des deux pourra enregistrer son empreinte digitale.

Autre

Voir sur la page anglophone.

KDE

Ne fonctionne pas avec KDE en version 0.3 Debian : même sous konsole après reboot (étrange car ok avant reboot). Avant reboot, de toute façon, seule la konsole supporte l'authentification par empreinte, aucun effet lors d'une demande de mot de passe graphique.

Selon le thread ci-dessous, cela vient de kdm qui n'est pas 100% fidèle à la spec de pam. Si vous voulez malgré tout l'utiliser c'est possible. http://bbs.archlinux.org/viewtopic.php?pid=232607 Toutefois la solution propriétaire (pilote UPEK + framework bioapi) fonctionne mieux avec KDE.

Liens


Contributeurs : Id2ndR, ft

FIXME La page a probablement besoin d'être réorganisée: hardy (installation simple, pas de dépots, etc…) VS others (ajout de dépots, modif de fichiers, etc…)


thinkfinger.txt · Dernière modification: Le 17/07/2013, 20:48 par 82.216.148.84
Le contenu de ce wiki est sous licence : CC BY-SA v3.0