Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
fprint [Le 08/03/2012, 19:21] Thalyn [Test de fonctionnement] |
fprint [Le 11/09/2022, 11:04] (Version actuelle) moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>Hardy Intrepid Jaunty authentification sécurité BROUILLON}} | + | {{tag>Bionic authentification sécurité empreinte_digitale}} |
---- | ---- | ||
+ | {{ :fprint_logo.png?70|fprint_logo.png}} | ||
+ | ====== ƒprint : logiciel de lecture d'empreintes digitales ====== | ||
- | ====== Lecteur d’empreintes digitales FPrint ====== | + | **ƒPrint** est un logiciel parmi les plus répandus de lecture biométrique sous Linux.\\ |
- | + | Il permet d'unifier la prise en compte des **empreintes digitales**, et est parfaitement intégré à Gnome et aux fenêtres de connexion les plus répandues. Une fois installé, le doigt remplacera les mots de passe pour : | |
- | {{ fprint_logo.png }} | + | * Les commandes //su// ou [[sudo|sudo]] dans un terminal |
- | + | * Les demandes de connexion super utilisateur en interface graphique (ex: gparted) | |
- | **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 : | + | |
- | + | ||
- | <file> | + | |
- | 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</file> | + | |
- | + | ||
- | 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. | + | |
+ | ===== Vérifier la prise en compte de votre matériel ===== | ||
+ | Listez les périphériques grâce à ''lsusb'' : vous obtenez quelque chose comme | ||
+ | <code bash>Bus 004 Device 002: ID 0483:2016 SGS Thomson Microelectronics Fingerprint Reader | ||
+ | Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub | ||
+ | //Etc…</code> | ||
+ | On obtient | ||
+ | * Le "Vendor ID" : ici **0483** | ||
+ | * Le "Product ID" : ici **2016** | ||
+ | On peut comparer ces identifiants avec : | ||
+ | * La liste du matériel supporté du site du projet, | ||
+ | * La liste du matériel connu insupporté, | ||
+ | * Les liens se trouvent sur cette [[https://www.freedesktop.org/wiki/Software/fprint/libfprint/|page]]. | ||
===== Installation ===== | ===== Installation ===== | ||
- | ==== Pour Natty (et Oneiric ?) ==== | + | Il suffit d'installer les paquets **[[apt>libpam-fprintd]]** et **[[apt>fprintd]]**. \\ |
- | <note important>Non testé sur la version 11.10 Oneiric</note> | + | Et voilà, vous allez pouvoir commencer à utiliser votre empreinte digitale ! |
- | \\ | + | ===== Utilisation ===== |
- | Ajouter le dépôt FPrint , via la console :\\ | + | Le panneau de configuration ne permet pas directement d'enregistrer des empreintes digitales…\\ |
- | <code>sudo add-apt-repository ppa:fingerprint/fprint</code> | + | Pour cela suivez la méthode en ligne de commande. |
- | \\ | + | |
- | * [[:tutoriel:comment_installer_un_paquet|Installer les paquets]] : **[[apt://libpam-fprint|libpam-fprint]], [[apt://libfprint0|libfprint0]] (normalement déjà installé avec libpam-fprint), [[apt://fprint-demo|fprint-demo]], puis [[apt://gksu-polkit|gksu-polkit]]**.\\ | + | |
- | * Passer ensuite à l'étape 3 : Teste de fonctionnement. | + | |
- | ==== Pour Jaunty ==== | + | ==== Test ==== |
- | <note important>Non testé, cela semble fonctionner (fprint a pu être lancé mais mon matériel n'est pas détecté) !</note> | + | |
- | [[: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 : | + | Si vous avez installé le paquet ''fprint-demo'', vous pouvez tester la bonne détection de votre lecteur biométrique. Taper dans votre [[:Unity#tableau de bord dash|tableau de bord Unity]] le mot clé: fprint. |
- | 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. | + | Une interface graphique permet de choisir le lecteur biométrique (si vous en avez plusieurs). Ce logiciel permet uniquement de tester le matériel et n'enregistre ni ne configure rien pour le système. Toutes les empreintes enregistrées sont donc perdues à la fermeture de la fenêtre de test. |
- | [[:tutoriel:comment_installer_un_paquet|installez les paquets]] **[[apt://libpam-fprint|libpam-fprint]] [[apt://libfprint0|libfprint0]] [[apt://fprint-demo|fprint-demo]]**. | ||
- | ==== Pour Hardy ==== | + | ==== Enregistrement par défaut (Index droit) ==== |
+ | * Lancez, dans un [[:terminal]] la commande suivante: <code bash>sudo pam-auth-update</code> | ||
+ | * *Espace* pour sélectionner, en plus du reste, "Fingerprint Authentification" | ||
+ | * *Tab* pour aller sur "OK", puis *Espace* pour confirmer | ||
+ | * Ensuite, lancez : <code>fprintd-enroll</code> | ||
+ | Le terminal vous répond quelque chose comme: | ||
+ | <code>Using device /net/reactivated/Fprint/Device/0 | ||
+ | Enrolling right-index-finger finger. | ||
+ | </code> | ||
+ | * Passez alors votre index droit, le terminal vous répond : enroll-stage-passed | ||
+ | * Répéter l'opération jusqu'à ce que le terminal vous réponde : enroll-completed | ||
+ | * Vos empreintes digitales sont bien enregistrées ! | ||
- | Si vous utilisez Ubuntu [[:Hardy]], [[:tutoriel:comment_modifier_sources_maj|ajoutez le dépôt]] suivant : | + | Vous pouvez maintenant vous connecter avec votre empreinte digitale, mais aussi avec votre mot de passe si nécessaire (mauvaise reconnaissance d'empreinte 3 fois de suite). |
- | deb http://ppa.launchpad.net/madman2k/ubuntu hardy main restricted universe multiverse | + | <note tip>Au moment d'enregistrer votre empreinte, recouvrer bien le lecteur (appuyer assez fort) pour éviter une mauvaise lecture à la connexion. Il est possible de devoir reprendre l'opération plusieurs fois.</note> |
- | puis [[:tutoriel:comment_installer_un_paquet|installez les paquets]] **[[apt://libpam-fprint|libpam-fprint]] [[apt://libfprint|libfprint]] [[apt://fprint-demo|fprint-demo]]**. | + | ==== Verifier l'enregistrement de votre empreinte ==== |
- | <note important>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**.</note> | + | * Pour vérifier l'enregistrement de vos empreintes |
+ | <code bash> | ||
+ | fprintd-verify | ||
+ | </code> | ||
+ | * Retourne par exemple les informations suivantes (dans l'ordre: erreur / empreinte refusée / empreinte ok) | ||
+ | <code> | ||
+ | Using device /net/reactivated/Fprint/Device/0 | ||
+ | Listing enrolled fingers: | ||
+ | - #0: right-index-finger | ||
+ | Verify result: verify-unknown-error (done) | ||
+ | </code> | ||
+ | <code> | ||
+ | Using device /net/reactivated/Fprint/Device/0 | ||
+ | Listing enrolled fingers: | ||
+ | - #0: right-index-finger | ||
+ | Verify result: verify-no-match (done) | ||
+ | </code> | ||
+ | <code> | ||
+ | Using device /net/reactivated/Fprint/Device/0 | ||
+ | Listing enrolled fingers: | ||
+ | - #0: right-index-finger | ||
+ | - #1: right-thumb | ||
+ | Verify result: verify-match (done) | ||
+ | </code> | ||
+ | ==== Enregistrement d'autres empreintes ==== | ||
+ | Il suffit de rajouter à la commande ci-dessus l'option -f (ou --enroll-finger) suivi de: | ||
+ | * left-thumb, left-index-finger, left-middle-finger, left-ring-finger, left-little-finger, right-thumb, right-index-finger,right-middle-finger, right-ring-finger, right-little-finger. | ||
- | ==== Via les sources ==== | + | {{:fprint:fingerschema.gif?400|}} |
- | 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. | + | Exemple, pour enregistrer l'empreinte du majeur droit: |
- | === Récupérer les sources === | + | <code bash> |
- | + | fprintd-enroll -f right-middle-finger | |
- | 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]]. | + | </code> |
- | + | ||
- | 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 ===== | + | |
- | === Natty 11.04 et Oneiric 11.10 === | + | |
- | <note important>Lors de "mon" installation sur Kubuntu "Natty", le raccourci de fprint_demo se situait dans Applications > Utilitaires du menu K.\\ | + | |
- | Cependant, l'interface graphique restait grisée. Il semble impossible de l'utiliser autre qu'en root (à vérifier).\\ | + | |
- | Pour le lancer nous allons donc utiliser la console. | + | |
- | </note> | + | |
- | - Lancer fprint_demo (mode administrateur): <code>sudo fprint_demo</code>\\ | + | |
- | - Au lancement de l'application (graphique), nous devons être dans l'onglet "Enroll". Il suffit ensuite de cliquer sur l'un des boutons "Enroll" (à droite) et de passer le doigt approprié pour enregistrer vos empreintes.\\ Lorsque votre empreinte sera "capturée", visualisez bien l'image. Votre empreinte doit être bien visible et nette, sans zone exagérément "noire", ou floue (qui aurait tendance à montrer que vous êtes allé trop vite ou trop lentement).\\ //Au moment où je rédige ce tuto, fprint_demo est en anglais. Il y a donc 10 lignes à renseigner correspondantes à nos 10 doigts (du pouce à l'auriculaire (petit doigt) de la main gauche, puis de la même manière pour la main droite).// | + | |
- | - Une fois tous vos doigts enregistrés (enrollés), il sera désormais écrit "enrolled" pour chaque empreintes enregistrées.\\ Il est alors conseillé de vérifier vos empreintes en cliquant sur l'onglet "verifiy" en sélectionnant d'abord (à droite dans liste déroulante) le doigt que vous souhaitez vérifier. | + | |
- | - Ensuite vous pouvez "jouer" un peu avec, afin de vérifier de nouveau que vos doigts sont reconnus, dans l'onglet "identify" : Cochez toutes les cases à droite (si vous avez enregistrés les empreintes correspondantes), puis cliquez sur le bouton (en bas à droite) : Identify.\\ Passez alors n'importe quel doigt sur votre lecteur d'empreintes.\\ Si fprint réussi la correspondance, il sera alors écrit le message :<code>Matched nom_du_doigt(en anglais)</code>\\ S'il est écrit : <code>Could not identify finger.</code> retentez l'expérience 2 ou 3 fois.\\ S'il n'arrive toujours pas à trouver la correspondance, vous devrez alors recommencer l'enregistrement de cette empreinte (étape 2 de cette liste).\\ | + | |
- | - Ensuite, lancez dans la console la commande : <code>sudo pam-auth-update</code>\\ Un écran (fond bleu) dans la console devrait s'afficher, vous demandant d'activer les profils PAM.\\ Sélectionnez (avec les flèches du clavier "haut" ou "bas") "Fingerprint authentification by pam-fprint", s'il n'y a pas d'astérisque devant, alors appuyez simplement sur la touche <espace> pour l'activer.\\ Ensuite sur "Ok" (en utilisant la touche <Tab> (Tabulation)).\\ Cela va créer une nouvelle ligne de paramétrage dans le fichier common-auth (voir N°7 de cette liste). \\ | + | |
- | - Ensuite, lancez dans la console la commande (pas certain que cette phase soit indispensable) : <code>fprintd-enroll</code>\\ Il vous sera demandé de passer votre index. Ce processus permet d'enregistrer votre empreinte (index droit). | + | |
- | - Vous pouvez également vérifier que l'authentification est bien gérée désormais par PAM (Module d'authentification), en éditant le fichier //remplacez "kate" par "gedit" pour les utilisateurs Ubuntu/Gnome/Unity)//: <file> sudo kate /etc/pam.d/common-auth</file> Vérifier que la ligne suivante soit bien inscrite dans le fichier common-auth, sinon ajoutez la manuellement sous la ligne //"here are the per-package modules (the "Primary" block)"// : <file>auth [success=2 default=ignore] pam_fprint.so</file> | + | |
- | - Si vous avez réussi toutes ses étapes, alors vos empreintes sont enregistrées et FPrint est prêt à fonctionner (nul besoin de suivre le reste du tutoriel).\\ | + | |
- | \\ | + | |
- | \\ | + | |
- | === Antérieur à Natty === | + | |
- | 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<sup>ème</sup> 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 | + | |
- | <file>auth required pam_unix.so nullok_secure</file> | + | |
- | et ajoutez la ligne ci-dessous juste avant : | + | |
- | <file>auth sufficient pam_fprint.so</file> | + | |
- | + | ||
- | 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 : | + | |
- | <file>@include common-auth</file> | + | |
- | Et ajoutez la ligne ci-dessous juste avant : | + | |
- | <file>auth sufficient pam_fprint.so</file> | + | |
- | + | ||
- | ==== Pour SUDO uniquement ==== | + | |
- | + | ||
- | [[:tutoriel:comment_modifier_un_fichier|Ouvrez le fichier]] de configuration **/etc/pam.d/sudo** et cherchez la ligne suivante : | + | |
- | <file>#%PAM-1.0</file> | + | |
- | Et ajoutez la ligne ci-dessous juste après : | + | |
- | <file>auth sufficient pam_fprint.so</file> | + | |
- | + | ||
- | + | ||
- | ===== 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//. | + | |
- | + | ||
- | <note tip>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 | + | |
- | </note> | + | |
===== Liens ===== | ===== Liens ===== | ||
+ | * [[Empreintes digitiales|La page doc.ubuntu-fr.org sur les empreintes digitales]] | ||
* [[http://www.reactivated.net/fprint/wiki/Main_Page|Site officiel (en)]] | * [[http://www.reactivated.net/fprint/wiki/Main_Page|Site officiel (en)]] | ||
+ | * [[https://launchpad.net/~fingerprint/+archive/fprint|Page du dépôt ƒPrint (en) : launchpad.net - Fingerprint - ƒPrint]] | ||
+ | * [[http://www.geekplanet.fr/content/view/25/33|Source éventuelles]] | ||
---- | ---- | ||
- | + | //Contributeurs principaux : [[:utilisateurs:Ban]], MAJ [[:utilisateurs:l_africain|L'Africain]] (Créateur) [[:utilisateurs:FelixP]], [[:utilisateurs:eagle08|René Stoecklin]] (mise en page, conformation à la norme W3C (interface Lynx Braille).//\\ | |
- | //Contributeur principal : [[:utilisateurs:Ban]] (Créée à partir de http://www.geekplanet.fr/content/view/25/33/)//\\ | + | |
- | //Contributeur : [[:utilisateurs:Thalyn]] pour les parties 2 & 3 (Natty et Oneiric) de ce tutoriel// | + |