{{tag>Hardy Intrepid Jaunty authentification sécurité BROUILLON}} ---- ====== Lecteur d’empreintes digitales FPrint ====== {{ fprint_logo.png }} **FPrint** est un projet visant à améliorer le support des lecteurs biométriques sous Linux. D'autres existent comme [[:thinkfinger]], qui fonctionnent pour certains mais pas pour d'autres. FPrint supporte un assez grand nombres de lecteurs d'empreintes du marché, notamment une grande partie des très répandus AES**** de AuthenTec. {{fprint_demo_v0.1.gif?350}} {{fprint_demo_v0.3.png?350}} ===== Mon lecteur biométrique est-il pris en charge par FPrint ? ===== Pour savoir si votre lecteur est supporté par FPrint, commencez par trouver de quel modèle il s'agit précisément, //via// la commande ''lsusb'' : lsusb Vous verrez quelque chose du genre : Bus 003 Device 001: ID 0000:0000 Bus 002 Device 002: ID 08ff:2580 AuthenTec, Inc. Bus 002 Device 001: ID 0000:0000 Bus 001 Device 001: ID 0000:0000 Ce qui nous intéresse sont les identifiants du vendeur (Vendor ID) et du modèle (Product ID), ici un AuthenTec, les identifiant sont **08ff** et **2580**. Vous pouvez maintenant comparer les identifiants avec ceux listés sur le [[http://www.freedesktop.org/wiki/Software/fprint/libfprint/Supported%20devices|site du projet]]. S'il y a une correspondance, cela devrait fonctionner. Il existe aussi une [[http://www.freedesktop.org/wiki/Software/fprint/libfprint/Unsupported%20devices|page répertoriant les matériels connus pour ne pas fonctionner]]. Si votre matériel en fait partie, inutile de continuer, il ne va pas fonctionner. Vous pouvez alors essayer d'autres pilotes comme [[:ThinkFinger]]. Si votre matériel n'est listé sur aucune des deux pages, vous pouvez essayer, et voir par vous-même si cela fonctionne. ===== Installation ===== ==== Pour Jaunty ==== Non testé, cela semble fonctionner (fprint a pu être lancé mais mon matériel n'est pas détecté) ! [[:tutoriel:comment_installer_un_paquet|installez les paquets]] **[[apt://libpam-fprint|libpam-fprint]] [[apt://fprint-demo|fprint-demo]]**. Installez les paquets [[apt://libmagickwand-dev|libmagickwand-dev]] ,[[apt://libpam0g-dev|libpam0g-dev]] Téléchargez ensuite les sources de lib_fprint sur [[http://www.reactivated.net/fprint/wiki/Download|le site officel]]. Enfin, compilez : tar xvf ~/libfprint-*.tar.bz2 ./configure --prefix=/usr make sudo make install ==== Pour Intrepid et Jaunty ==== Installez simplement les packages, ils sont déjà présents dans les dépots officiel d'intrepid. [[:tutoriel:comment_installer_un_paquet|installez les paquets]] **[[apt://libpam-fprint|libpam-fprint]] [[apt://libfprint0|libfprint0]] [[apt://fprint-demo|fprint-demo]]**. ==== Pour Hardy ==== Si vous utilisez Ubuntu [[:Hardy]], [[:tutoriel:comment_modifier_sources_maj|ajoutez le dépôt]] suivant : deb http://ppa.launchpad.net/madman2k/ubuntu hardy main restricted universe multiverse puis [[:tutoriel:comment_installer_un_paquet|installez les paquets]] **[[apt://libpam-fprint|libpam-fprint]] [[apt://libfprint|libfprint]] [[apt://fprint-demo|fprint-demo]]**. Attention : ce dépôt contient des mises à jour **non recommandées** ; il vous est conseillé d'installer les trois paquets dont nous avons besoin puis de le **désactiver**. ==== Via les sources ==== S'il n'existe pas de paquet pour votre version ou votre architecture, il vous faudra compiler les sources pour faire fonctionner votre lecteur d'empreintes. === Récupérer les sources === Commencez par télécharger les sources de **libfprint**, **pam_fprint** et **fprint_demo** dans votre répertoire personnel depuis le [[http://www.reactivated.net/fprint/wiki/Download|site de fprint]]. Une fois les sources téléchargées, créez un nouveau répertoire nommé par exemple //fprint_build// ; et décompressez-y les trois archives téléchargées. Par exemple en ligne de commande : mkdir ~/fprint_build && cd ~/fprint_build tar xvf ~/libfprint-*.tar.bz2 tar xvf ~/pam_fprint-*.tar.bz2 tar xvf ~/fprint_demo-*.tar.bz2 === Installer les dépendances requises === Pour pouvoir [[:tutoriel:compilation|compiler]] fprint, il vous faut [[:tutoriel:comment_installer_un_paquet|installer les paquets]] suivants : **[[apt://build-essential|build-essential]] [[apt://libusb-dev|libusb-dev]] [[apt://libssl-dev|libssl-dev]] [[apt://libglib2.0-dev|libglib2.0-dev]] [[apt://libmagick9-dev|libmagick9-dev]] [[apt://libpam-dev|libpam-dev]] ** === Compilation === == libfprint == Ouvrez un [[:terminal]] et rendez-vous dans le dossier créé lors de la décompression de libfprint. Si vous avez suivi les instructions, le dossier devrait être //~/fprint_build/libfprint-*// : cd ~/fprint_build/libfprint-*/ puis lancez la configuration : ./configure --prefix=/usr si aucune erreur n'apparaît, lancez la compilation : make puis l'installation : sudo make install == pam_fprint == Répétez l'opération avec pam_fprint : cd ~/fprint_build/pam_fprint-*/ ./configure --prefix=/usr && make && sudo make install == fprint_demo == Si vous désirez pouvoir faire le test de fonctionnement avec l'utilitaire fprint_demo, [[:tutoriel:comment_installer_un_paquet|installez le paquet]] **[[apt://libgtk2.0-dev|libgtk2.0-dev]]** puis lancez la compilation : cd ~/fprint_build/fprint_demo-*/ ./configure && make && sudo make install ===== Test de fonctionnement ===== Une fois les outils installés, vérifions si le lecteur d'empreintes fonctionne comme il doit. Lancez ''fprint_demo'' et essayez de scanner vos empreintes. Si ça fonctionne, vous pourrez l'utiliser pour l'authentification, sinon, posez une question sur le [[http://forum.ubuntu-fr.org/|forum]] ;-) Si problème (could not open device), faire sudo fprint_demo ===== Configuration ===== Si la phase de test s'est bien passée (vous avez vu vos doigts, chouette !), passons à l'utilisation pratique du lecteur. Pour pouvoir utiliser le lecteur dans [[:GDM]] ou pour [[:sudo]], nous allons utiliser [[wpfr>Pluggable_authentication_module|PAM]]. Commencez donc par [[:tutoriel:comment_installer_un_paquet|installer les paquets]] **[[apt://libpam|libpam]]** et **[[apt://libpam-fprint|libpam-fprint]]** s'il ne l'est déjà. Nous allons maintenant enregistrer une (ou plusieurs) empreinte(s). Lancez la commande suivante pour enregistrer votre 7ème doigt, c'est-à-dire l'index droit : sudo pam_fprint_enroll --enroll-finger 7 Si vous préférez un autre doigt, changez 7 par un autre chiffre, les doigts étant numérotés de l'auriculaire gauche à l'auriculaire droit. Si vous désirez enregistrer plusieurs doigts, il vous suffit de répéter l'opération en changeant le numéro. ==== Pour toute authentification ==== [[:tutoriel:comment_editer_un_fichier|Éditez le fichier]] de configuration ///etc/pam.d/common-auth// et cherchez la ligne auth required pam_unix.so nullok_secure et ajoutez la ligne ci-dessous juste avant : auth sufficient pam_fprint.so Si vous voulez avoir plusieurs tentatives, vous pouvez entrer cette ligne plusieurs fois. Si vous mettez cette ligne 3 fois vous aurez alors 3 essais avant de devoir rentrer votre mot de passe. ==== Pour l'identification dans GDM uniquement ==== [[:tutoriel:comment_modifier_un_fichier|Ouvriez le fichier]] de configuration **/etc/pam.d/gdm** et cherchez la ligne suivante : @include common-auth Et ajoutez la ligne ci-dessous juste avant : auth sufficient pam_fprint.so ==== Pour SUDO uniquement ==== [[:tutoriel:comment_modifier_un_fichier|Ouvrez le fichier]] de configuration **/etc/pam.d/sudo** et cherchez la ligne suivante : #%PAM-1.0 Et ajoutez la ligne ci-dessous juste après : auth sufficient pam_fprint.so ===== Problèmes connus ===== ==== Aucun prompt n'apparaît === Lors de l'utilisation de lecteurs d'empreintes //via// PAM avec [[:sudo#gksudo|gksudo]], aucune boîte de dialogue n'apparaît pour vous demander de scanner votre doigt. Vous devrez donc simplement passer votre doigt sur le lecteur après avoir lancé une application faisant appel à gksudo ; comme par exemple la majorité des entrés de menu dans //Système -> Administration//. Il est possible de simuler une boite de dialogue grâce à un petit script Python (trouvé [[http://ubuntuforums.org/showthread.php?t=622843|ici]]).\\ Pour cela, télécharger le script suivant : [[http://ubuntuforums.org/attachment.php?attachmentid=68030&d=1209511245|gksu.py]].\\ Enfin, quelques lignes à taper dans le terminal : sudo mv ./gksu.py /usr/local/bin/gksu sudo chmod 755 /usr/local/bin/gksu sudo apt-get install python-gnome2-extras python-pexpect ===== Liens ===== * [[http://www.reactivated.net/fprint/wiki/Main_Page|Site officiel (en)]] ---- //Contributeur principal : [[:utilisateurs:Ban]] (Créée à partir de http://www.geekplanet.fr/content/view/25/33/)//