Le lecteur d'empreintes digitales VFS 495 ne fonctionne pas sous Ubuntu

12

J'ai HP Probook 450 et il a un lecteur d'empreintes digitales intégré VFS 495 de Validity Inc. J'ai des pilotes Linux sur le site HP. Maintenant, je veux le faire fonctionner dans Ubuntu. Les pilotes sont au format rpm, j'ai donc utilisé un convertisseur étranger pour le convertir en paquet deb, puis installé.

Lien vers la page du pilote HP: Pilote

FYI: Ce package de pilotes contient une bibliothèque d'encapsuleurs fprint et contient également un fichier HPUsbVFS495.img, mais je n'ai pas pu comprendre comment cela fonctionne.

Sortie de lspci && lsusb:

00: 00.0 Pont hôte: Contrôleur DRAM du processeur Intel Core de 3e génération (rev 09)
00: 02.0 Contrôleur compatible VGA: Contrôleur graphique Intel Core Core de 3e génération (rev 09)
00: 14.0 Contrôleur USB: Intel Host 7 Series / C210 Series Chipset Family USB xHCI Host Controller (rev 04)
00: 16.0 Contrôleur de communication: Intel Corporation 7 Series / C210 Series Chipset Family MEI Controller # 1 (rev 04)
00: 1a.0 Contrôleur USB: Intel Host 7 Series / C210 Series Chipset Family USB Enhanced Host Controller # 2 (rev 04)
00: 1b.0 Périphérique audio: Contrôleur audio haute définition de la famille de chipsets Intel Corporation série 7 / C210 (rév 04)
00: Pont PCI 1c.0: Intel Root 7 Series / C210 Series Chipset Family PCI Express Root Port 1 (rev c4)
00: Pont PCI 1c.2: Intel Root 7 Series / C210 Series Chipset Family PCI Express Root Port 3 (rev c4)
00: 1c.3 Pont PCI: Intel Root 7 Series / C210 Series Chipset Family PCI Express Root Port 4 (rev c4)
00: Pont PCI 1c.5: Intel Root 7 Series / C210 Series Chipset Family PCI Express Root Port 6 (rev c4)
00: 1d.0 Contrôleur USB: Intel Host 7 Series / C210 Series Chipset Family USB Enhanced Host Controller # 1 (rev 04)
00: 1f.0 ISA bridge: Intel Corporation HM76 Express Chipset LPC Controller (rev 04)
00: Contrôleur SATA 1f.2: Contrôleur SATA à 6 ports de la famille de chipsets Intel Corporation 7 [mode AHCI] (rév 04)
02: 00.0 Classe non affectée [ff00]: Lecteur de carte PCI Express Realtek Semiconductor Co., Ltd. RTS5229 (rév 01)
03: 00.0 Contrôleur réseau: Ralink corp. RT3290 PCIe sans fil 802.11n 1T / 1R
03: 00.1 Bluetooth: Ralink corp. RT3290 Bluetooth
04: 00.0 Contrôleur Ethernet: Realtek Semiconductor Co., Ltd. RTL8111 / 8168/8411 Contrôleur Ethernet Gigabit PCI Express (rév 0c)
Bus 002 Périphérique 002: ID 8087: 0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Périphérique 001: ID 1d6b: 0002 Concentrateur racine Linux Foundation 2.0
Bus 001 Périphérique 004: ID 04ca: 7022 Lite-On Technology Corp. 
Bus 001 Appareil 003: ID 138a: 003f Validity Sensors, Inc. 
Bus 001 Périphérique 002: ID 8087: 0024 Concentrateur de correspondance de taux intégré Intel Corp.
Bus 001 Périphérique 001: ID 1d6b: 0002 Concentrateur racine Linux Foundation 2.0
Bus 004 Périphérique 001: ID 1d6b: 0003 Concentrateur racine Linux Foundation 3.0
Bus 003 Appareil 002: ID 09da: c10a A4 Tech Co., Ltd 
Bus 003 Périphérique 001: ID 1d6b: 0002 Concentrateur racine Linux Foundation 2.0
Ali Nawaz
la source
Cela n'a-t-il pas fonctionné si vous n'avez pas installé le logiciel?
Braiam
J'ai installé le pilote mais cela ne fonctionne pas.
Ali Nawaz
Je voulais dire que si sans rien installer cela fonctionnait? Modifiez également votre question et ajoutez la sortie de lspci && lsusb.
Braiam
Non, cela n'a pas fonctionné sans rien installer non plus. Et j'ai mis à jour la sortie.
Ali Nawaz

Réponses:

9

Je l'ai fait fonctionner le 16.04 sur cette machine en suivant ce guide mais il y avait quelques problèmes avec les liens alors voici exactement ce que j'ai fait ...

(D'abord, vous voudrez peut-être naviguer vers un dossier vide car nous ferons du téléchargement, de la compilation et des conversions. Les fichiers seront partout)

mkdir temporary
cd ./temporary

maintenant que nous avons créé un dossier et que nous y avons accédé, nous pouvons continuer ...

Tout d'abord, téléchargez -le et placez-le dans votre dossier vide.

Le guide est très long mais ce qu'il y a de bien, c'est qu'il devrait fonctionner si vous le suivez simplement de manière séquentielle. Si vous ne comprenez pas ce qui se passe, copiez et collez les lignes l'une après l'autre (ou demandez dans un commentaire)

installez le pilote:

tar xf vfs495.tar
cd vfs495
sudo apt install alien
sudo alien Validity-Sensor-Setup-4.5-118.00.x86_64.rpm
sudo dpkg -i validity-sensor-setup_4.5-119_amd64.deb

Maintenant, la partie des liens rompus. Voici les liens qui devraient fonctionner:

sudo apt install libssl1.0.0
ln -s /lib/x86_64-linux-gnu/libssl.so.1.0.0 /lib/x86_64-linux-gnu/libssl.so.0.9.8
sudo apt-get install libcrypto++-dev
ln -s /usr/lib/libcrypto++.so.9 /usr/lib/libcrypto.so.0.9.8

Ensuite, continuez. Installer libfprint

mkdir libfprint
cd libfprint
rpm2cpio ../libfprint-0.0.6-18.20.1.src.rpm | cpio -i --make-directories
tar xf libfprint-0.0.6.tar.bz2
cp ../libfprint-validity.patch ./libfprint-validity.patch
cd libfprint-0.0.6/
patch -p1 < ../libfprint-validity.patch
sudo apt-get install libusb-dev libcrypto++-dev libssl-dev libglib2.0-dev libmagickcore-dev checkinstall
./configure --prefix=/usr
make
sudo checkinstall -install=no make install
sudo dpkg -i libfprint_0.0.6-1_amd64.deb

Installez fprint_demo

cd ../..
sudo apt-get install libgtk2.0-dev
tar xf fprint_demo-0.4.tar.bz2
cd fprint_demo-0.4
./configure --prefix=/usr
make
sudo checkinstall -install=no make install
sudo dpkg -i fprint-demo_0.4-1_amd64.deb

À ce stade, nous pouvons commencer à enregistrer nos doigts.

sudo /etc/init.d/vcsFPServiceDaemon start
sudo fprint_demo

... après avoir enregistré votre doigt, vous pouvez vous entraîner dans l'onglet "identifier". Il affichera votre empreinte digitale! C'est tellement amusant: D parfois j'y vais juste et je continue de glisser XD

Et juste une note, ne prenez pas de captures d'écran de votre doigt et ne le partagez pas, à moins bien sûr que vous sachiez ce que vous faites. Votre empreinte digitale est précieuse. Mieux vaut le garder pour vos yeux seulement.

... de toute façon, continue. Installer pam_fprint

cd ..
tar xf pam_fprint-0.2.tar.bz2
cd pam_fprint-0.2/
sudo apt-get install libpam-dev
./configure --prefix=/usr
make
sudo checkinstall -install=no make install
sudo dpkg -i pam-fprint_0.2-1_amd64.deb

Nous pouvons maintenant commencer à configurer l'authentification par empreinte digitale. Je vous recommande de vous arrêter ici car je l'utilise depuis un certain temps et il y a plusieurs problèmes avec. Jusqu'à présent, votre pilote fonctionne et c'est très bien. Vous pouvez l'essayer pour l'authentification et le rétablir si vous le souhaitez, mais il n'est pas robuste pour une utilisation quotidienne.

Quoi qu'il en soit, nous devons modifier le /etc/pam.d/common-authfichier. Soyez prudent avec ce fichier !! . Si vous vous trompez, vous devrez le réparer à partir du mode de récupération.

Cela inciterait ubuntu à vous demander votre empreinte digitale ou votre mot de passe pour vous accorder un accès root et également pour la connexion. Vous pouvez donc toujours utiliser votre mot de passe pour vous connecter

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

Nous devons ajouter les lignes:

# fingerprint authentication through fprintd
auth    sufficient                      pam_fprint.so

et modifiez la ligne qui doit la pam_unix.so nullok_secure try_first_passrendre suffisante, comme ceci:

auth    sufficient      pam_unix.so nullok_secure try_first_pass

Voici enfin à quoi ressemble mon fichier .

Notez que le comportement dépendra de l'endroit où vous placerez les lignes. Si vous les placez au-dessus (le bloc "principal"), il vous demandera d'abord votre empreinte digitale, puis votre mot de passe et vice-versa.

J'espère que quelqu'un pourra clarifier ou donner un bon pointeur sur le fonctionnement exact de ce fichier.

Finalement...

cd ..
sudo cp vcsFPServiceDaemon /etc/init.d/
sudo update-rc.d vcsFPServiceDaemon defaults

et les choses devraient fonctionner.

Mina Michael
la source
3
Je vous remercie!! juste une petite remarque: vous devez copier vcsFPServiceDaemon dans /etc/init.d/ avant la première exécution du service et donc, avant d'exécuter fprint_demo
Denis
Cela a fonctionné mais s'est avéré instable avec un HP 640 G2 sous Elementary OS. J'ai dû le désinstaller. Guide parfait cependant, je vais certainement l'utiliser à nouveau sur un autre matériel ou une distribution différente. Merci!
Benoit Duffez
j'espère que ça vous a plu: D
Mina Michael
Guide excellent et détaillé! Il fonctionnait parfaitement sur un HP 470 G5 avec Linux Mint 18.3. J'ai une question supplémentaire: j'ai vu qu'il ne demandait les empreintes digitales que sur l'écran de connexion alors qu'après avoir verrouillé l'écran, il demandait toujours le mot de passe. Comment puis-je lui faire demander l'empreinte digitale lors du déverrouillage de l'écran également?
Stefano Coletta
hé, j'ai suivi le long, mais quand j'arrive au point où j'entre sudo /etc/init.d/vcsFPServiceDaemon start, il me dit que /etc/init.d/vcsFPServiceDaemon: 33: .: Can't open /etc/rc.status Mais la commande sudo fprint_demofonctionne, mais elle ne dit aucun appareil. Que dois-je faire ici? Je suis sur un HP EliteBook 840 si cela aide, et 18.04 avec Plasma installé
DPS