Nowe posty

xx Dystrybucja pod HP Omen (6)
Wczoraj o 23:30:08
xx [Poradnik] Wyszukiwanie Sterowników (2)
Wczoraj o 21:08:23
lamp Problem z Linux Lite po instalacji (0)
Wczoraj o 19:50:30
xx Ile pingwinów? (1)
Wczoraj o 08:59:24
xx konfiguracja pale moon (0)
2024-03-24, 21:53:42
xx Plasma 6 w Neonie ssie trochę mniej ... (10)
2024-03-23, 02:38:11
xx problem z instalacja sterowników do karty sieciowej (3)
2024-03-18, 18:10:16
xx Plik abc.001 (1)
2024-03-17, 17:48:27
xx Zlecę dopracowanie programu w MatLab (0)
2024-03-13, 15:28:40
xx Linux Mint 21.3 XFCE brak dźwieku po paru minutach (karta muzyczna zintegrowana) (5)
2024-03-12, 23:07:01

Autor Wątek: Wykorzystanie AuthenTec AES2501 Fingerprint Sensor w skrypcie bash  (Przeczytany 7032 razy)

mes mariusz

  • Gość
Chciałbym wykorzystać czytnik odcisku palca na USB w skryptach bash.

Przykładowo konsola pyta:

"Zeskanuj palec w celu deaktywacji systemu alarmowego."

Na podstawie rezultatu:

"Zostałeś rozpoznany jako Mariusz. Witaj" (następnie zostanie wykonany skrypt accepted.sh)

albo

"Nie ma cię w bazie. Odmowa dostępu." (następnie zostanie wykonany skrypt rejected.sh)

Mój czytnik:

Bus 002 Device 002: ID 08ff:2580 AuthenTec, Inc. AES2501 Fingerprint Sensor

Szukałem pomocy już w wielu miejscach. Bezskutecznie.
Chcę wykorzystać w: http://rasp485berry.wordpress.com/

Z góry serdecznie dziękuję za pomoc.

Mariusz

Offline 1709

  • Users
  • Guru
  • *****
  • Wiadomości: 2763
  • 1709
    • Zobacz profil
Wykorzystanie AuthenTec AES2501 Fingerprint Sensor w skrypcie bash
« Odpowiedź #1 dnia: 2014-03-19, 00:14:53 »
Jeśli pozwolisz to się trochę wtrącę, ponieważ lubie sobie czytać tu i tam, a nóż widelec może trafie na coś ciekawego....

Piszesz ....
Chciałbym wykorzystać .....
Przykładowo ....
Szukam pomocy .....

Ale chyba zapomniałeś napisać w czym masz problem ....
- Nie wiesz jak się za to zabrać ?
- Chcesz zlecić komuś napisanie takiego skryptu ?
- Nie wiesz jak  napisać skrypt w bashu który poprosi o palec i wykona następny skrypt?
- Jakiś inny problem ?
PS: Brak polskiej czcionki, nie jest to brak lenistwa, a jej brak w systemie i brak czasu na reczne poprawki.

mes mariusz

  • Gość
Wykorzystanie AuthenTec AES2501 Fingerprint Sensor w skrypcie bash
« Odpowiedź #2 dnia: 2014-03-19, 12:31:14 »
Niech to będzie odpowiedzią na twoje zapytanie:


Znalazłem już rozwiązanie umożliwiające wykorzystanie czytnika linii papilarnych w skryptach bash.

Wystarczy:

1. Zainstalować:
sudo add-apt-repository ppa:fingerprint/fprint
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install libfprint0 fprint-demo libpam-fprintd gksu-polkit
2. Zeskanować wzorcowy palec:
root@msi:/home/mariusz# fprintd-enroll
Using device /net/reactivated/Fprint/Device/0
Enrolling right index finger.
Enroll result: enroll-stage-passed
Enroll result: enroll-stage-passed
Enroll result: enroll-stage-passed
Enroll result: enroll-stage-passed
Enroll result: enroll-completed
3. Przeprowadzić próbną weryfikację:
root@msi:/home/mariusz# fprintd-verify
Using device /net/reactivated/Fprint/Device/0
Listing enrolled fingers:
 - #0: right-index-finger
Verify result: verify-match (done)
4. Wykorzystać w skryptach, np.

#!/bin/sh


res=`timeout 5 fprintd-verify | grep result`


if [ "$res" = "" ]
 then
 echo "`date +%Y.%m.%d-%T` - rescan to fast, please wait a few seconds..."
 fi


if [ "$res" = "Verify result: verify-match (done)" ]
 then
 echo "`date +%Y.%m.%d-%T` - acces confirmed"
 fi


if [ "$res" = "Verify result: verify-not-match (done)" ]
 then
 echo "`date +%Y.%m.%d-%T` - acces dennied"
 fi
Niestety jest to rozwiązanie wyłącznie dla pojedynczego usera / odcisku palca. Jeśli ma z tego korzystać więcej niż jedna osoba, zaczynają się schody.

Pilnie poszukuję rozwiązania dla więcej niż jednego usera.




Rozwiązanie abstrakcyjne / "na siłę" jakie przychodzi mi do głowy, to zbudować klawiaturę z kilkoma przyciskami (1 przycisk - 1 user) podłączaną w miejsce klawiatury klasycznej (ps2) która realizuje funkcję zalogowania się konkretnego usera (wciśnięcie klawisza wyśle ciąg znaków: sudo su, odczeka wyśle hasło, i znak entera, a następnie wyda polecenie uruchamiające skrypt realizujący weryfikację użytkownika z użyciem skanera palca.

Będzie działało? Będzie (co się nie da jak się da). Tyle, że jest to rozwiązanie głupie i na okrętkę. Poza tym przeprowadzenie weryfikacji będzie wymagało wcześniejszego kliknięcia przycisku usera.

To już zamiast tej dziwnej klawiatury może czytnik RFID, który po weryfikacji karty wyśle po ps2 znaki jak wyżej (zalogowanie na konkretnego usera w zależności od numeru karty). Będzie podwójne zabezpieczenie, RFID + odcisk palca ;-)

Drobny przerost formy nad treścią, albo i treści nad formą.

Kurcze gdzie szukać kogoś kto niskopoziomowo będzie umiał naklepać aplikację dla linuksa, wykorzystującą fingerprint w celu weryfikacji użytkownika na podstawie bazy kilku użytkowników i wykonać skrypt allowed.sh (z przyjęciem parametru od którego użytkownika nastąpiło poprawne rozpoznanie) lub skryptu declined.sh (z ewentualnym zapisaniem odcisku nieproszonego gościa w bazie intruzów).

Programisty szukam.

Dałoby się jeszcze prościej!

Urządzenie mogłoby wysłać po ps2 wyłącznie nazwę użytkownika (logowanie) - linuksa można skonfigurować w taki sposób, by zamiast hasła oczekiwał na zeskanowanie palca, i ustawić dla danego użytkownika odpowiedni skrypt startowy.

Problem w tym, że wprowadzenie wzorcowego palca do bazy możliwe jest wyłącznie z pozycji sudousera.

mariusz1@msi:~$ fprintd-enroll
Using device /net/reactivated/Fprint/Device/0
failed to claim device: Not Authorized: net.reactivated.fprint.device.enroll
mariusz1@msi:~$

mes mariusz

  • Gość
Wykorzystanie AuthenTec AES2501 Fingerprint Sensor w skrypcie bash
« Odpowiedź #3 dnia: 2014-03-19, 20:44:56 »
Czy udało mi się nieco jaśniej przedstawić czego potrzebuję? Z góry dzięki za feedback.

Offline 1709

  • Users
  • Guru
  • *****
  • Wiadomości: 2763
  • 1709
    • Zobacz profil
Wykorzystanie AuthenTec AES2501 Fingerprint Sensor w skrypcie bash
« Odpowiedź #4 dnia: 2014-03-20, 12:45:57 »
Jasne teraz jak słońce :-)

Ja tu innej metody niż podłączenie klawiatury tylko do wprowadzenia loginu który wymaga fprintd nie widze.

Moze na forum
http://darkblue.homeip.net/fingerprint/Forum/.
ktoś jeszcze coś podpowie jak użyć odcisku jako loginu i hasła
PS: Brak polskiej czcionki, nie jest to brak lenistwa, a jej brak w systemie i brak czasu na reczne poprawki.

mes mariusz

  • Gość
Wykorzystanie AuthenTec AES2501 Fingerprint Sensor w skrypcie bash
« Odpowiedź #5 dnia: 2014-03-22, 11:08:41 »
Dzięki serdeczne za info :-)

Ja obecnie stoję na etapie:

Za: https://launchpad.net/~fingerprint/+archive/fingerprint-gui

Note for Lubuntu users
==================
lxdm does not properly support alternative authentication methods in the PAM stack. If you

want to use fingerprint-gui with Lubuntu, you should install lightdm and lightdm-gtk-greeter.

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install lightdm lightdm-gtk-greeter

Mimo to w Lubuntu 14.04 pakiedy są domyślnie zainstalowane.


Za: https://launchpad.net/~fingerprint/+archive/fprint

sudo add-apt-repository ppa:fingerprint/fprint
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install libfprint0 fprint-demo libpam-fprintd gksu-polkit


Dodajemy do systemu kilku użytkowników:

sudo adduser mariusz1
sudo adduser mariusz2
sudo adduser mariusz3


Zapisujemy odciski palców użytkowników:

fprintd-enroll mariusz
fprintd-enroll mariusz1
fprintd-enroll mariusz2
fprintd-enroll mariusz3


Od teraz gdy wyświetlany jest domyślny ekran logowania do Lubuntu zamiast wprowadzania hasła można użyć czytnika odcisku palca. Mimo, że pole hasła pozostanie puste, a na ekranie nie ukaże się żadna stosowna informacja o powodzeniu skanowania należy użyć przycisku Zaloguj by zalogować się do systemu.


Szukam rozwiązania:

- jak w Lubuntu wyłączyć automatyczny start środowiska graficznego (po włączeniu i uruchomieniu komputera chcę zobaczyć tekstową konsolę).

- chcę by w konsoli tekstowej bez wpisywania nazwy użytkownika ani żadnych innych akcji na klawiaturze samo zeskanowanie palca powodowało zalogowanie się do systemu użytkownika, który jest właściciejem zeskanowanego właśnie odcisku palca.

Popytam więc na wskazanym forum. Dzięki!

Offline ultr

  • Users
  • Guru
  • *****
  • Wiadomości: 1177
    • Zobacz profil
Wykorzystanie AuthenTec AES2501 Fingerprint Sensor w skrypcie bash
« Odpowiedź #6 dnia: 2014-03-22, 12:25:36 »
Możesz pokombinować z modułem do PAM, aczkolwiek tu raczej nie obejdziesz podania nazwy użytkownika, bo program login będzie zawsze i tak o to pytał.

Możesz więc napisać własny program login i spawnować go na tty zamiast oryginalnego. We własnej wersji będziesz mógł odwoływać się bezpośrednio do czytnika palca oraz danych przez niego dostarczanych i odpowiednio logować użytkownika (tu już wystarczy wywołać su z odpowiednim parametrem).

Odsyłam do odpowiednich manuali i Google.