ThinkFinger

Differences between revisions 8 and 9
Revision 8 as of 2007-02-22 13:34:03
Size: 4711
Editor: user-85-201-19-124
Comment:
Revision 9 as of 2007-02-22 14:56:20
Size: 5007
Editor: AGrenoble-152-1-84-42
Comment:
Deletions are marked like this. Additions are marked like this.
Line 99: Line 99:
 * Does not seem to work properly with Kubuntu : login session does not work with fingerprints, "kdesu" applications fail to start, sometimes root launching succeeds without any authentification at all, ... But basic fingerprinting works perfectly for "tf-tool" (create or verify fingerprints).

Install ThinkFinger on Ubuntu

Thinkfinger is a free driver for the SGS Thomson Microelectronics fingerprint reader that you can find on most Lenovo/Thinkpad, Dell and Toshiba. Be aware that ThinkFinger only works for this specific model, some Lenovo/Dell/Toshiba laptops are using other models.

[http://thinkfinger.sourceforge.net/ ThinkFinger website]

This howto was written for ThinkFinger 0.2.2 on a [https://wiki.ubuntu.com/LaptopTestingTeam/ToshibaSatelliteU200-163 Toshiba Satellite U200-163] running Edgy.

Packages

Not yet available. Any help is welcome.

Download and compile

  1. Download and untar the source code from the [http://sourceforge.net/project/showfiles.php?group_id=179573 Sourceforge page]

  2. Install required dependancies

sudo apt-get install build-essential libtool libusb-dev libpam0g-dev 
  1. Create the directory that will store fingerprints

sudo mkdir /etc/pam_thinkfinger
  1. Configure and compile the whole thing (3 commands to run separatly in the source folder you just unzipped above):

./configure --with-securedir=/lib/security --with-birdir=/etc/pam_thinkfinger
make
sudo make install

Test the fingerprint reader

We will acquire a fingerprint that we will store temporarly to test if the reader works properly.

  1. Acquire the fingerprint with the command

sudo tf-tool --acquire

It will ask for your fingerprint 3 times (or more if there are failed scans).

  1. Test your fingerprint

sudo tf-tool --verify

It will tell you if the scan match the one acquired above.

A typical test session is something like that :

ploum@spoutnik:~$ sudo tf-tool --acquire

ThinkFinger 0.2.2 (http://thinkfinger.sourceforge.net/)
Copyright (C) 2006, 2007 Timo Hoenig <thoenig@suse.de>

Initializing... done.
Please swipe your finger (successful swipes 3/3, failed swipes: 0)... done.
Storing data (/tmp/test.bir)... done.
ploum@spoutnik:~$ sudo tf-tool --verify

ThinkFinger 0.2.2 (http://thinkfinger.sourceforge.net/)
Copyright (C) 2006, 2007 Timo Hoenig <thoenig@suse.de>

Initializing... done.
Please swipe your finger (successful swipes 1/1, failed swipes: 0)... done.
Result: Fingerprint does match.

Use it everyday !

We will now tell PAM to use the fingerprint scanner so you can just swipe your finger instead of typing your password.

  1. Modify the file /etc/pam.d/common-auth so it looks like :

#
# /etc/pam.d/common-auth - authentication settings common to all services
#
# This file is included from other service-specific PAM config files,
# and should contain a list of the authentication modules that define
# the central authentication scheme for use on the system
# (e.g., /etc/shadow, LDAP, Kerberos, etc.).  The default is to use the
# traditional Unix authentication mechanisms.
#
auth    sufficient      pam_thinkfinger.so
auth    required        pam_unix.so try_first_pass nullok_secure

In fact you just have to add the auth line for pam_thinkfinger before the next line and you have to add the try_first_pass argument.

  1. Add your fingerprint in the known fingerprint database :

sudo tf-tool --add-user your_login

That's all ! You can now log yourself from GDM or in console by simply swiping your finger !

Known problems

  • Biggest problem : gksudo will become "invisible". It means that if you launch any program with gksudo, it will wait forever until your swipe your finger without displaying anything on the screen. For example, if you launch synaptic from the menu, nothing will happen. Swipe your finger and synaptic appears ! (this is [https://bugs.launchpad.net/ubuntu/+source/gksu/+bug/86843 bug #86843])

  • Gnome-keyring and gnome-screensaver don't use PAM. So you have to type your password. Fingerprint doesn't work here. A [http://johnny.chadda.se/2007/02/21/unlock-the-gnome-keyring-upon-login/ Workaround for gnome-keyring] is available.

  • It's not translated. You will see "Type your password or swipe your finger" in english, not in your locale.
  • Does not seem to work properly with Kubuntu : login session does not work with fingerprints, "kdesu" applications fail to start, sometimes root launching succeeds without any authentification at all, ... But basic fingerprinting works perfectly for "tf-tool" (create or verify fingerprints).

F.A.Q

  • Can I still use a regular password ?

  • Yes. The "enter your password" will be replaced by "Enter your password or swipe your finger". You can still use your password if you are wearing gloves (just an example)
  • I have a "Could not claim USB device" error

  • You must run tf-tool as root or use "sudo" in front of the command.
  • I still need to type my login. I want to only swipe my finger.

  • Indeed, it would be cool. This is a feature currently not supported by Thinkfinger but it might be available in future releases.

ThinkFinger (last edited 2012-04-09 01:50:13 by de55)