Сканер отпечатков пальцев (fprintd)
Введение
В Linux использование сканера отпечатков пальцев используется fprintd и библиотека libfprint.
Linux поддерживает сканеры с интерфейсом как USB, так и SPI. Убедитесь, что ваш сканер поддерживается libfprint`ом перед тем, как приступить к конфигурации. Полный список поддерживаемых устройств можете посмотреть здесь.
Конфигурация
Система fprintd не предоставляет графического интерфейса, так что все дальнейшие действия будут проводится из консоли.
Установка
Для установки необходимо ввести следующие команды:
apt-get update
apt-get install libfprint2 fprintd pam_fprintd
Добавления отпечатков пальцев
Добавление отпечатков пальцев происходит при помощи fprintd-enroll
~ » fprintd-enroll --help Использование: fprintd-enroll [ПАРАМЕТР…] [username] Enroll a fingerprint Параметры приложения: -f, --finger Finger selected to verify (default is automatic)
При запуске без параметров автоматически происходит создание отпечатков для текущего пользователя, для правого указательного пальца
Настройка авторизации
Для настройки требуются внести строку
auth sufficient pam_fprintd.so
на второе место в начало файла /etc/pam.d/lightdm
В данном случае сначала будет проводится запрос пароля, в случае если он не верный, включается проверка по отпечатку пальца. Подробнее про систему pam, можно ознакомится в соответствующей статье на АрчВики.
Ограничение прав пользователей
По-умолчанию пользователь имеет права на неограниченное создание новых записей об отпечатках. Ограничить это можно при помощи средств polkit. Для этого нужно создать файл /etc/polkit-1/rules.d/50-net.reactivated.fprint.device.enroll.rules и внутри прописать следующее:
polkit.addRule(function (action, subject) { if (action.id == "net.reactivated.fprint.device.enroll") { return subject.user == "root" ? polkit.Result.YES : polkit.Result.NO } })
Тогда создавать новые записи сможет только root пользователь.