KeePassXC¶
Эти инструкции описывают, как защитить и зашифровать базу данных паролей KeePassXC с помощью Nitrokey 3.
Пререквизиты¶
Требуется KeePassXC версии 2.7.6 или новее.
Nitrokey App 2 version 2.2.2 or newer is required.
Первый шаг: Генерация HMAC-секрета с помощью приложения Nitrokey 2¶
Open Nitrokey App 2
Выберите Nitrokey 3
Выберите вкладку
PASSWORDS.Нажмите на
ADD, чтобы создать новую учетную запись.Выберите
HMACиз выпадающего меню алгоритма.Примечание
Учетная запись автоматически именуется в
HmacSlot2.Для учетной записи HMAC нельзя сохранить никаких дополнительных атрибутов.
Секрет HMAC должен быть длиной ровно 20 байт и в формате Base32. То есть ровно 32 символа.
На Nitrokey 3 можно сохранить ровно один секрет HMAC.
Чтобы сгенерировать секрет, в поле справа есть кнопка. Можно также ввести свой собственный секрет, если он соответствует требованиям.
Предупреждение
Если Nitrokey 3 потерян или недоступен, разблокировать базу данных уже не удастся! Таким образом, вы можете установить второй Nitrokey 3 с тем же секретом HMAC в качестве резервного устройства.
Важно
Секрет можно только увидеть перед сохранением. Если база данных KeePassXC будет использоваться с другим Nitrokey 3, необходимо скопировать секрет HMAC, который только можно перед сохранением учетной записи.
Нажмите на
SAVE, чтобы сохранить учетные данные.
Первый вариант: Защитите существующую базу данных KeePassXC с помощью Nitrokey 3¶
Откройте KeePassXC
Откройте существующую базу данных KeePassXC, которую необходимо защитить с помощью Nitrokey 3.
Выберите
Database->Database Security...в строке менюВыберите
Securityна левой сторонеНажмите на кнопку
Add additional protection...на вкладкеDatabase Credentials.Прокрутите страницу вниз до
Challenge-Responseи нажмите наAdd Challenge-Response.Теперь, если Nitrokey 3 подключен и HMAC был сгенерирован ранее, в поле должен появиться Nitrokey 3.
Нажмите на
OK, чтобы добавить Nitrokey 3 в существующую базу данных KeePassXC.
Примечание
По умолчанию Nitrokey 3 используется в качестве второго фактора в дополнение к парольной фразе. Чтобы защитить базу данных исключительно с помощью Nitrokey 3, удалите кодовую фразу, нажав кнопку Remove Password.
Совет
Если Nirokey 3 не распознается, полностью закройте KeePassXC. Затем подключите Nitrokey 3 к компьютеру и снова запустите KeePassXC.
Второй вариант: Создание базы данных KeePassXC, защищенной Nitrokey 3¶
Откройте KeePassXC
Выберите
Database->New Database...в строке меню, чтобы создать новую базу данных KeePassXC.Заполните отображаемое имя и необязательное описание для новой базы данных и нажмите на
Continue.Здесь можно настроить дополнительные параметры шифрования базы данных или сохранить настройки по умолчанию. Настройки также можно изменить позже в настройках базы данных.
Нажмите на
Continue, чтобы подтвердить настройки.Учетная запись базы данных
Здесь вы можете ввести пароль в качестве второго фактора для разблокировки базы данных. Чтобы подключить Nitrokey 3 (на котором был сгенерирован HMAC-секрет) к новой базе данных KeePassXC, нажмите на
Add additional protection....Прокрутите страницу вниз до
Challenge-Responseи нажмите наAdd Challenge-Response.Теперь, если Nitrokey 3 подключен и HMAC был сгенерирован ранее, Nitrokey 3 должен отобразиться в поле. Нажмите на
Continue, чтобы завершить создание новой базы данных KeePassXC.
Примечание
Если оставить парольную фразу пустой, база данных будет защищена исключительно Nitrokey 3. Если ввести парольную фразу, база данных будет защищена парольной фразой и Nitrokey 3.
Совет
Если Nitrokey 3 не распознается, полностью закройте KeePassXC. Затем подключите Nitrokey 3 к компьютеру и снова запустите KeePassXC.
Устранение неполадок в Linux¶
Если устройство Nirokey 3 не распознается KeePassXC в системе Linux:
Provided that the udev rules have been set as described here.
При условии, что
pcscd serviceбыли начаты с:sudo systemctl start pcscd.service
Установите последнюю версию KeePassXC с помощью flatpak:
flatpak install flathub org.keepassxc.KeePassXC
Установите
ccidна системы на базе Arch Linux. См. также: Arch wiki: Nitrokey.
pcscd: Карта не найдена¶
Проблема: Приложение, использующее pcscd, не показывает Nitrokey 3.
Решение: Во-первых, убедитесь, что scdaemon не запущен (см. предыдущий раздел):
$ gpg-connect-agent "SCD KILLSCD" /bye
Теперь перечислите смарт-карты, распознанные pcscd с pcsc_scan -r. Вы должны увидеть запись, подобную этой:
$ pcsc_scan -r
Using reader plug'n play mechanism
Scanning present readers..
0: Nitrokey 3 [CCID/ICCD Interface] 00 00
Если Nitrokey 3 отображается, значит, он правильно распознан pcscd и, возможно, проблема в приложении, которое пытается получить к нему доступ. Если он не отображается, убедитесь, что ваша версия libccid обновлена. Поддержка Nitrokey 3 была добавлена в libccid 1.5.0.
Обновление базы данных устройств¶
Если вы не можете обновить libccid до поддерживаемой версии, вам необходимо вручную обновить базу данных устройств. Путь к базе данных зависит от вашего дистрибутива:
Arch, Debian, Ubuntu:
/etc/libccid_Info.plist
Перед перезаписью файла обязательно сделайте его резервную копию. Вы можете загрузить обновленный файл базы данных устройств из репозитория nitrokey-3-firmware. После обновления файла перезапустите pcscd и снова запустите pcsc_scan -r. Теперь Nitrokey 3 должен появиться на экране.