Tuesday, July 12, 2016

Configure Fingerprint Log in with Ubuntu 16.04

Fingerprint authentication is not out-of-the box supported in Ubuntu. However it can be enabled with fingerprint-gui.


Checking Whether Your Fingerprint Reader is Supported


Not all fingerprint readers are supported for fingerprint gui. To check whether your reader is supported,

  • Open Terminal
  • Run 'lsusb' command
  • Locate the ID of the finger print reader. For example my 'lsusb' output contains the following line,
Bus 003 Device 003: ID 138a:0017 Validity Sensors, Inc. Fingerprint Reader

So the ID of my fingerprint reader is 138a:0017 (as highlighted above)
If the ID is there you should be able to use the fingerprint reader as expected.


Installing Fingerprint GUI

In the command line run the following commands

sudo apt-add-repository ppa:fingerprint/fingerprint-gui
sudo apt-get update
sudo apt install libbsapi policykit-1-fingerprint-gui fingerprint-gui


Setting up the Fingerprints

  • Run 'fingerprint-gui' in the command line to open fingerprint-gui
  • Select the finger print reader driver and click next
  • Select a finger and click next to configure the fingerprint of that finger
  • You'll be prompted to use that finger on the fingerprint reader for 5 times. Once this is done the fingerprint of that fnger will be registered
  • Repeat for all 10 fingers
  • Once all fingers are registered go to settings tab and test the fingerprint authentication for "sudo". You sould see 'Authentication successful.' in the text field if the finger is recognized.
That's it. Now you should be able to use the fingerprint authentication when you log in, unlock computer or when you use sudo.

Note: Even though you can log in using fingerprint after setting up, It won't unlock the gnome keyring (which requires the password). Fingerprint GUI has an option to use a external drive with encrypted password which will unlock the keyring. But it is not always practical. So my personal approach is to use the password to log in and then use finger print to unlock the computer and to authenticate for sudo.