NB io ho fatto tutto su Ubuntu 9.04. Per le versioni precedenti [glow=red,2,300]CREDO[/glow] si possa applicare aggiungendo due sorgenti che vi indicherò in seguito.
Inoltre prima di attuare questo procedimento ho provato con la guida per il lettore Thomson che c'è nel Wiki e il risultato è che ho dovuto formattare poichè mi si bloccava la finestra di accesso sempre con la scritta "password errata" (soluzione drastica ma non sapevo cosa fare :p). Per cui se anche voi avete provato quella guida, NON CONTINUATE CON QUESTA, a meno che non ripristiniate tutto alla perfezione.
Per prima cosa verifichiamo che il vostro lettore sia quello in causa. Aprite il terminale e digitate
- Codice: Seleziona tutto
lsusb
Nella lista dovrebbe apparirvi una riga simile:
- Codice: Seleziona tutto
Bus 004 Device 002: ID 147e:1000
Se scrivete (dove 004 è il Bus e 002 è Device)
- Codice: Seleziona tutto
lsubs -v -s 004:002
dovreste avere, tra i tanti, questo risultato:
- Codice: Seleziona tutto
iManufacturer 1 TouchStrip
iProduct 2 Fingerprint Sensor
Bene se tutto vi risulta come sopra allora potete continuare.
Se avete una versione precedente alla 9.04, dovete aggiungere questi due sorgenti (Sistema/Amministrazione/Sorgenti Software/Software di terze parti), cambiando la versione (in questo caso intrepid):
- Codice: Seleziona tutto
deb http://ppa.launchpad.net/jon-oberheide/ubuntu intrepid main
deb-src http://ppa.launchpad.net/jon-oberheide/ubuntu intrepid main
Apriamo Synaptic e installiamo le due librerie: libfakekey0 e libfprint0.
Ora scarichiamo l'ultima versione del software FingerprintGUI cliccando qui. Estraiamo l'archivio e apriamo il Terminale. Spostiamoci nella cartella dove l'abbiamo estratto.
Ora digitiamo il comando:
- Codice: Seleziona tutto
sudo ./install.sh --with-upek
Ora è stato installato software e drivers.
Apriamo il Terminale e digitiamo questo comando:
- Codice: Seleziona tutto
sudo gedit /etc/modules
e aggiungiamo la riga (se non c'è già):
- Codice: Seleziona tutto
uinput
Apriamo Sistema/Amministrazione/Utenti e gruppi. Clicchiamo su Sblocca e poi su gestione gruppi. Aggiungiamo un gruppo chiamato plugdev e assegniamogli tutti gli utenti, compreso root.
Ora scriviamo nel Terminale:
- Codice: Seleziona tutto
sudo nautilus
e ricordiamoci di non chiudere mai la finestra che si aprirà se no dovremo ridigitare il comando.
Creiamo una cartella /var/upek_data e cambiamo i suoi permessi in modo che tutti abbiano permessi di lettura e scrittura in questo modo:
Ora spostiamoci in /etc/ e creiamo un file chiamato upek.cfg e inseriamoci questa stringa:
- Codice: Seleziona tutto
nvmprefix="/var/upek_data/.NVM"
Salviamo e chiudiamo.
Ora apriamo un altro Terminale e usate questo comando per cambiare i permessi alle periferiche USB:
- Codice: Seleziona tutto
chmod -R 666 /dev/bus/usb
Chiudiamo questo Terminale.
Ora creiamo questo file: /etc/udev/rules/50-libfprint.rules e copiamoci dentro questa stringa:
- Codice: Seleziona tutto
ATTRS{idVendor}=="147e", ATTRS{idProduct}=="1000", MODE="0664", GROUP="plugdev"
A questo punto andiamo in Sistema/Preferenze/Fingerprint GUI e inseriamo le nostre impronte in questo modo:
1 - selezioniamo "Upek (0x147e) unknown device (0x1000)" e premiamo Next;
2 - scegliamo un dito e premiamo Next;
3 - passiamo la nostra impronta 3 volte e premiamo Next;
4 - clicchiamo su Finish.
Ricordiamoci di lasciare vuoto un dito per root.
Ora apriamo il Terminale e scriviamo
- Codice: Seleziona tutto
sudo fingerprintGUI
e ripetiamo la procedura per il dito lasciato libero prima.
Ora torniamo alla nostra finestra aperta con sudo nautilus.
Andiamo in /etc/pam.d e creiamo una copia del file common-auth rinominando uno dei due file common-auth.fingerprint.
Apriamo common-auth.fingerprint e cerchiamo la riga:
- Codice: Seleziona tutto
auth [success=1 default=ignore] pam_unix.so nullok_secure
e sostituiamola con:
- Codice: Seleziona tutto
auth sufficient libpam_fingerprint.so debug
auth [success=1 default=ignore] pam_unix.so try_first_pass nullok_secure
Salviamo e chiudiamo.
Ora apriamo il Terminale e scriviamo:
- Codice: Seleziona tutto
sudo gdmsetup
andiamo in sicurezza e disabilitiamo Abilita accesso automatico e Abilita accesso temporizzato.
Chiudiamo finestra e Terminale.
Ora modificheremo i file per modificare la procedura di login per tutti i componenti di Ubuntu. Vi raccomando di provare almeno una delle cose prima di modificare quella di login, altrimenti rischiate di non riuscire più accedere al sistema. Inoltre dovete settare una password a root (con il comando sudo passwd root).
Modificare la sicurezza di "su":
Apriamo il file /etc/pam.d/su e cerchiamo la riga:
- Codice: Seleziona tutto
@include common-auth
e modifichiamola con:
- Codice: Seleziona tutto
@include common-auth.fingerprint
Salviamo e chiudiamo. Se vogliamo provare la procedura, riavviamo il PC, apriamo il terminale e digitiamo su. Alla richiesta di password dovrebbe apparire la schermata dell'impronta (a me questo non funziona però non compromette nulla).
Modificare la sicurezza di "sudo":
Apriamo il file /etc/pam.d/sudo e cerchiamo la riga:
- Codice: Seleziona tutto
@include common-auth
e modifichiamola con:
- Codice: Seleziona tutto
@include common-auth.fingerprint
Salviamo e chiudiamo. Se vogliamo provare la procedura, riavviamo il PC, apriamo il terminale e digitiamo sudo gnome-terminal. Se tutto è ok dovrebbe apparire la finestra dell'impronta (a me funziona).
Modificare la sicurezza di "login":
Apriamo il file /etc/pam.d/login e cerchiamo la riga:
- Codice: Seleziona tutto
@include common-auth
e modifichiamola con:
- Codice: Seleziona tutto
@include common-auth.fingerprint
Salviamo e chiudiamo. Per provare basta semplicemente riavviare e alla finestra di accesso dovrebbe apparire l'impronta.
Modifichiamo la sicurezza si "gdm":
Apriamo il file /etc/pam.d/gdm e cerchiamo la riga:
- Codice: Seleziona tutto
@include common-auth
e modifichiamola con:
- Codice: Seleziona tutto
@include common-auth.fingerprint
Eliminiamo la riga
- Codice: Seleziona tutto
auth requisite pam_nologin.so
Ecco fatto. In teoria è possibile abilitare anche la sicurezza per lo Screensaver ma non sono riuscito a tradurre ed aplicare del tutto questo paragrafo:
- Codice: Seleziona tutto
Gnome-screensaver needs a plugin to display the fingerprint GUI widget to the user while
unlocking. To start this plugin with the gnome-screensaver-dialog open the gconf-editor, find the
“apps | gnome-screensaver” entry and enable the “embedded_keyboard_enabled” item. Then
invoke the string “/usr/local/bin/fingerprintPlugin -d” as the “/apps/gnome-
screensaver/embedded_keyboard_command” and close gconf-editor. This step needs to be taken
by every user who wants to unlock his/her gnome-screensaver by fingerprint on that machine!
Non capisco cosa intenda per "invoke the string"... Se qualcuno collabora completiamo la guida.
E questo è tutto. Spero sia tutto ok, ma sarei grato a qualche Guru del forum di controllare. A me funziona tutto alla perfezione e ogni volta che mi viene chiesta la password appare la finestrina per l'impronta, passo l'impronta e il PC mi riconosce subito, per cui è inutile dire che non mi assumo nessuna responsabilità di eventuali casini. Io suggerirei di inserire la guida nel wiki.



