Cette page n'a pas encore d'étiquettes.
Apportez votre aide…

Ceci est une ancienne révision du document !


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.

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!).

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 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.

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.

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 sympbolique :

 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

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 doit lorsque le gestionnaire de session (gdm) vous demandera votre mot de passe. Remarque : ce denier 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.

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 (driver UPEK + framework bioapi) fonctionne mieux avec KDE.


Contributeurs : Id2ndR, ft

  • thinkfinger.1211109223.txt.gz
  • Dernière modification: Le 18/04/2011, 14:38
  • (modification externe)