Мой блог
Обзор сканера отпечатков пальцев Immurok: биометрия для Linux, SSH и ИИ-агентов
Обычно дактилоскопический сканер в ноутбуке выполняет ровно одну задачу — разблокирует операционную систему при входе. Разработчики устройства Immurok решили пойти намного дальше. Это компактный беспроводной модуль, который не только снимает блокировку с рабочего стола Linux, но и подтверждает команды sudo, авторизует запросы через polkit, хранит SSH-ключи, генерирует коды двухфакторной аутентификации (TOTP) и даже выступает физическим барьером для ИИ-агентов, написавших код. И все это срабатывает по касанию одного пальца через Bluetooth.
Я протестировал предрелизный образец Immurok в течение недели на своем дистрибутиве Ubuntu. Идея устройства отличная, а ключевые функции после настройки действительно работают без сбоев. Впрочем, путь к стабильной работе на платформе Linux оказался не самым простым: мне пришлось столкнуться с ручной сборкой, неочевидными интерфейсными моментами и даже с багом в задержке демона, который блокировал работу sudo. Давайте подробно разберем, на что способен этот гаджет, какие нюансы важно учитывать и стоит ли он своего места на рабочем столе.
Что умеет сканер Immurok
В самом базовом сценарии Immurok работает как внешний беспроводной биометрический сканер для стационарного компьютера или ноутбука, где изначально нет встроенного датчика отпечатков. Однако его функциональные возможности выходят далеко за рамки обычной разблокировки экрана.



Благодаря интеграции с подсистемой Linux PAM модуль позволяет подтверждать привилегированные команды sudo и графические запросы авторизации polkit. Кроме того, устройству можно доверить генерацию и безопасное хранение аппаратных SSH-ключей, а также выдачу временных кодов двухфакторной аутентификации TOTP только после физического распознавания пальца владельца.
Отдельный интерес представляет сценарий работы с ИИ-агентами (например, при автогенерации кода). Идея заключается в том, что нейросетевой помощник может подготовить чувствительную команду, запустить SSH-сессию или запросить секретный ключ, но сам защищенный процесс не выполнится до тех пор, пока вы физически не прикоснетесь к сканеру.

Разработчики заявляют высокий уровень приватности: шаблоны отпечатков и приватные ключи никогда не покидают аппаратную часть устройства, облачное хранилище не используется, а телеметрия полностью отсутствует. Для защиты сопряжения применяется протокол P-256 ECDH с HMAC-SHA256, а все ответы авторизации подписываются криптографически.

Аппаратное оснащение и внешний вид
Качество сборки и внешнее исполнение гаджета вызывают положительные эмоции. Модуль выполнен в алюминиевом корпусе, обработанном на ЧПУ-станке, и по своей форме, серебристому цвету и закругленным углам напоминает миниатюрную копию Mac mini.

Технические характеристики Immurok
- Процессор: архитектура RISC-V, частота до 60 МГц.
- Беспроводная связь: Bluetooth Low Energy (BLE).
- Сканер: емкостный датчик отпечатков (время отклика до 500 мс).
- Габариты и вес: 44 × 44 × 14,2 мм, масса около 40 г.
- Аккумулятор: 110 мАч, зарядка через порт USB Type-C.
- Энергопотребление в режиме ожидания: около 50 мкА.
- Память отпечатков: до 5 биометрических профилей.
На задней грани расположена кнопка питания и управления для режима сопряжения и подтверждения действий. В комплекте со сканером не поставляется кабель USB-C, но сейчас это едва ли проблема — подходящий провод есть практически у каждого. По заявлениям производителя, одного заряда хватает более чем на месяц работы. В моих тестах начальный уровень заряда в Linux TUI составлял 84%, а за неделю активного использования упал до 78%, что подтверждает хорошую автономность.

Установка в Linux: сборка из исходных текстов
Пользователи Windows и macOS получают готовые графические приложения, но текущая версия Immurok для Linux требует работы через консоль: она включает фоновый демон на Rust, утилиту командной строки (CLI) и терминальный интерфейс (TUI).
Для развертывания системы на моей Ubuntu 26.04 потребовалось сначала установить пакеты разработки и инструментарий Rust через rustup. Очень пригодилась команда make check-deps, которая сразу показала недостающие системные зависимости в окружении.

Сборка проекта задействует около 200 зависимых библиотек (crates), что заметно нагружает процессор на несколько минут. После завершения компиляции команда make install быстро разместила демон, PAM-модуль, CLI-инструменты и системные службы, после чего пользовательский сервис запустился автоматически.

Для опытных пользователей Linux такой процесс не составит труда, но для массового устройства, позиционируемого как удобная замена паролям, подобный порог входа слишком высок. К моменту финального релиза разработчикам необходимы готовые бинарные пакеты для популярных дистрибутивов.

Сопряжение: подключение — это еще не сопряжение
Первая попытка связывания показала незрелость текущего ПО. При попытке выполнить сопряжение через TUI система выдавала ошибку о том, что устройство не подключено, а CLI-версия обещала ожидать нажатия кнопки 30 секунд, но сразу сбрасывала процесс.

Рабочим решением оказалось предварительное ручное подключение Immurok через стандартные настройки Bluetooth в Ubuntu. Только когда операционная система отобразила активное соединение, я вернулся в TUI Immurok, нажал клавишу p и затем физическую кнопку на самом гаджете. После этого произошел обмен криптографическими ключами и сопряжение завершилось успешно.
Регистрация отпечатков пальцев
После сопряжения добавление биометрических данных проходит гладко. В терминальном интерфейсе TUI достаточно нажать клавишу e и поочередно приложить палец к датчику. В протестированной прошивке потребовалось 12 прикосновений для полной оцифровки узора в нулевую ячейку.

Сканер поддерживает сохранение до 5 отпечатков. Важная деталь безопасности: добавление каждого последующего пальца требует подтверждения отпечатком, уже зарегистрированным в системе. Это логичный шаг, однако CLI-инструмент не всегда внятно информирует пользователя о причинах ошибок при повторной попытке ввода или удалении данных.

Исправление бага с работой sudo
После успешной регистрации отпечатка я решил проверить работу в терминале через sudo apt update. Однако прикосновение к сканеру не вызывало никакой реакции, и авторизация не проходила.

Причиной оказалось состояние гонки (race condition) в Linux-демоне. При установке Bluetooth-связи демон сразу опрашивал статус Immurok, однако вспомогательному Python-скрипту уведомлений D-Bus требовалось около 5,2 секунды на запуск. Таймаут ответа в демоне составлял ровно 5 секунд, из-за чего статус сбрасывался в ошибку NO_STATUS.

Используя ИИ-помощника Claude, я внес правку в код, увеличив лимит ожидания до 15 секунд, и пересобрал клиент. После этого авторизация sudo заработала безупречно: при вводе привилегированной команды достаточно касания датчика, чтобы продолжить работу без ввода пароля учетной записи. Отмечу, что разработчики Immurok оперативно устранили эту проблему в свежих обновлениях исходного кода.

Разблокировка сеанса Ubuntu и резервные механизмы
С пропатченным клиентом Immurok уверенно снимает блокировку с уже активной сессии Ubuntu. Стоит учесть, что при первичной загрузке компьютера биометрия не заменяет пароль — это стандартное ограничение безопасности, характерное также для macOS и Windows.
Отдельно хочу похвалить реализацию резервного входа (fallback). Если отключить Bluetooth или убрать Immurok, система не «зависает» в ожидании сканера, а моментально переключается на стандартное поле ввода пароля. Удобное устройство не должно превращать временный сбой связи в блокировку доступа.

Работа с SSH-ключами: главная фишка
Именно в работе с SSH ключ Immurok раскрывается лучше всего. Устройство способно генерировать приватные ключи ECDSA P-256 непосредственно внутри чипа. Приватный ключ никогда не покидает гаджет, а на сервер экспортируется только публичная часть для файла authorized_keys.

При генерации через CLI я столкнулся с отсутствием текстовой подсказки: утилита замирала, ожидая касания пальца, не выводя сообщений. В TUI этот процесс нагляднее — интерфейс прямо просит приложить палец к сканеру.
Я экспортировал публичный ключ, добавил его на свой сервер Raspberry Pi (в корпусе Pironman Max) и включил перехват агента Immurok (установка сокета в качестве IdentityAgent). При попытке подключения по SSH Immurok запрашивает биометрию, и после касания датчика сессия мгновенно открывается. При этом старые SSH-ключи на компьютере остаются доступными в качестве резерва для серверов, где ключ Immurok еще не прописан.
Генератор 2FA-кодов TOTP
Хранение секретов TOTP на физическом устройстве реализовано очень удобно. Я добавил двухфакторную аутентификацию для GitHub, после чего получение одноразового кода в TUI требовало подтверждения отпечатком пальца. Код успешно принимается сервисом, а секретный ключ остается изолированным от операционной системы.
Физическое подтверждение действий ИИ-агентов
Самая необычная возможность Immurok — использование биометрии в качестве физического контроля для ИИ-агентов, написания и выполнения кода. Я подключил плагин Immurok для Claude и задействовал обертку imk.
Когда ИИ-агент попытался выполнить команду подключения к Raspberry Pi по SSH, Immurok затребовал касание пальца. Без моего физического присутствия за столом нейросеть не смогла бы завершить защищенную операцию.
Здесь важно помнить об ограничении: физический барьер работает только тогда, когда команда жестко проходит через обертку imk run --agent. Если у агента есть возможность выполнить прямую команду в обход обертки, защитный контур разрывается. Поэтому для реальной безопасности требуется строгая настройка прав окружения.
Что требует доработки
Терминальный интерфейс и утилита CLI
В текущей версии CLI-утилите не хватает автодополнения (tab completion), а текстовые сообщения об ошибках часто не объясняют причин сбоя. TUI информативнее, но различие в доступных функциях между ними создает путаницу. Инструкции и документация пока распределены неполно.
Бесконечный рост лог-файла
Фоновый демон непрерывно записывает данные в файл ~/.immurok/logs.txt. За первую неделю размер файла достиг 4 МБ, а за две недели — 15 МБ. При постоянной работе это дает около 200 МБ в год, но главное — отсутствие ротации логов. При циклическом сбое лог может быстро разрастись. Для Linux оптимальным решением была бы интеграция со стандартным журналом systemd-journald.
Итоги: стоит ли покупать Immurok?
Спустя неделю использования я с удовольствием продолжаю применять Immurok каждый день. Основные трудности были связаны с начальной настройкой и ранней версией ПО для Linux. На моем Asus Zenbook, где нет встроенного сканера отпечатков, Immurok отлично дополнил рабочее окружение.
Аппаратная часть выполнена качественно, а ключевые функции — подтверждение sudo, разблокировка сеанса, SSH-авторизация, TOTP и контроль ИИ-агентов — работают исправно. Грамотная реализация резервного парольного входа гарантирует безопасность от случайных блокировок.
Условия покупки и краудфандинг
На момент публикации Immurok находится на стадии краудфандинговой кампании на Kickstarter по цене $59 (планируемая розничная цена — $69) с поставками, намеченными на ноябрь 2026 года. Разработчики активно обновляют репозиторий, поэтому к моменту массовых отгрузок программная часть для Linux должна стать гораздо дружелюбнее к пользователю.
Источник: itsfoss.com
