How To Setup fprint For Fingerprint Authentication On Ubuntu
A while ago I talked about how you can setup the ThinkFinger package to enable fingerprint authentication on Ubuntu. The entire setup works quite well (at least for me), but it has its problems because it is specific for Lenovo laptops and so there is not much demand for it. This is where fprint enters: fprint is an attempt at creating an open source module that can interface with different fingerprint scanners (not only limited to ThinkPads!) and has reached a relatively “usable” stage at which I think exceeds ThinkFinger. First of all it has a nice (however simple) graphical interface and allows you to enroll several fingers. This tutorial is based on information provided by Fabián Rodríguez and packages created by Pavel Rojtberg. Therefore most of the credit goes to them as I only mean to create a condensed version of Fabián’s tutorial that can be followed by any non-technical Ubuntu user.
- The first step is to add the PPA repository to your sources list. Just add the following line to the end of the /etc/apt/sources.list file:
deb http://ppa.launchpad.net/madman2k/ubuntu hardy main restricted universe multiverse
- Now you have to update your apt cache to include the list of packaged from the newly added repository. Just run the following command:
sudo aptitude update
- The next step is to install the actual packages, including: a graphical interface (fprint-demo), the actual module (libfprint) and a PAM module to allow easy authentication (libpam-print).
sudo aptitude install fprint-demo libpam-fprint libfprint
- Run the command fprint_demo to enroll yourself into the database. The opened application should look like the following screenshot. Just click on the enroll button, and swipe your finger three times for each. Also note if you have trouble with scanning certain fingers, just skip them. You do not need to have the entire collection.
- Make sure that your /etc/pam.d/common-auth file contains the following lines. If you already added the ThinkFinger PAM module, make sure to remove any referenced to it from the same file!
auth sufficient pam_fprint.so
auth required pam_unix.so nullok_secure
- You are done, just make sure to leave normal password authentication enabled for now. Because fprint is still at an early stage and might have some problems.