Autentificare în Terminalul Linux cu senzorul de amprente

Nu doar din comoditate, ci și pentru a-mi proteja parola de ochii curioșilor atunci când folosesc laptopul în public, prefer autentificarea cu amprentă, iar implementarea acestei funcționalități sub Linux (Manjaro KDE în exemplu dat), este o operație mult mai simplă decât ar putea părea la prima vedere.

Autentificare în Terminal cu senzorul de amprentă

Desigur, pentru ca senzorul de amprentă să funcționeze, trebuie să fie compatibil cu sistemul de operare, iar acesta să-l identifice corect. Comanda universală care ne ajută în acest scop este lsusb, aceeași la care apelăm atunci când dorim să listăm toate dispozitivele conectat la unul dintre porturile USB al PC-ului.

Dacă printre răspunsurile primite găsim unul în cadrul căruia apar cuvintele „fingerprint sensor”, înseamnă că dispunem de un cititor de amprente compatibil pentru a-l utiliza la autentificarea în aplicațiile compatibile.

➜  ~ lsusb
Bus 002 Device 002: ID 8087:8000 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:8008 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 138a:0017 Validity Sensors, Inc. VFS 5011 fingerprint sensor
Bus 003 Device 003: ID 8087:0a2a Intel Corp. Bluetooth wireless interface
Bus 003 Device 004: ID 058f:6387 Alcor Micro Corp. Flash Drive
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

În caz contrar va trebui ca mai întâi să instalăm driverele necesare utilizării acestuia.

Pentru senzorul de amprente al T440p n-a trebuit să intervin, fiind recunoscut corect de către kernel-ul 5.12, dar dacă dispuneți de un laptop mult mai nou, instalarea driverului necesar s-ar putea să vă dea ceva bătăi de cap.

În Arch Linux și distribuții derivate precum Manjaro, Arco Linux, etc., este necesară instalarea pachetului fprintd, apoi activarea manuală pentru fiecare aplicație în parte.

Pentru înregistrarea amprentei/lor:

fprintd-enroll

Atingem senzorul de amprente de fiecare dată când ni se cere:

Înregistrare amprente

De exemplu, pentru a valida comenzile sudo cu amprenta, va trebui adăugată linia de mai jos în fișierul /etc/pam.d/sudo:

auth sufficient pam_fprintd.so

Acesta arătând astfel după modificare:

Activare amprentă pentru autentificare sudo

De menționat că trebuie procedat la fel pentru fiecare aplicație în parte. Astfel, dacă se dorește utilizarea amprentei pentru autentificarea în contul de utilizator, va fi necesară adăugarea aceleiași linii în fișierul aparținând SDDM, șamd.

Login cu amprentă

Atunci când amprenta nu va fi recunoscută sau detectată, senzorul va fi dezactivat și ni se va cere introducerea parolei. Același lucru se va întâmpla și dacă ignorăm solicitarea.

Amprentă nerecunoscută

Dacă amprenta a fost detectată și recunoscută, solicitarea de autentificare va fi validată.

Utilizare amprentă pentru sudo

Curând —era vorba ca acest lucru să se întâmple chiar din versiunea actuală— KDE va oferi nativ posibilitatea de autentificare cu amprenta, deocamdată însă nu există nicio altă modalitate decât cea descrisă, iar comportamentului acesteia este oarecum ciudat.

De exemplu, SDDM solicită autentificarea cu parolă, dar pentru a putea realiza autentificarea folosind amprenta va trebui mai întâi apăsată tasta Enter fără a introduce caractere în caseta parolei, altfel cititorul de amprente nu va fi activat.

2 Comentarii

  1. Ce bine arata desk-top-ul tau!
    Eu mi-am (extra)criptat la instalare partitia home, pe langa parola de root si user.

    1. Merci! Eu nu prea sunt adeptul criptării, pentru complicațiile cu care vine la pachet, prefer să criptez individual doar folderele și fișierele cu date sensibile.

Faci un comentariu sau dai un răspuns?

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

Acest site folosește Akismet pentru a reduce spamul. Află cum sunt procesate datele comentariilor tale.