Debian Jessie, XFCE 4.10, KeePass2, IceDove (с Enigmail)..
Я использую пароли, сгенерированные KeePass2 для моего закрытого ключа gpg, для расшифровки/шифрования писем. Icedove — мой клиент, который использует enigmail.
Как только я хочу расшифровать/раскодировать письмо, pinentry
появляется (pinentry-gtk2), и я не могу вставить его в поле пароля, и не могу его переместить - поэтому я хотел бы, чтобы KeePass2 автоматически ввел мой длинный пароль за меня. Что делаетнетработать с сочетанием клавиш (работает и для всего остального), но с помощью щелчка правой кнопкой мыши по записи KeePass2 для 'выполнить авто-тип'.
это медленно сводит меня с ума.. Я прочитал кучу обсуждений на форуме - ни одно из которых не было действительно полезным и попытался изменить настройки gpg-agent для использования pinentry-curses. Я даже удалил pinentry-gtk2, что сделало icedove полностью неспособным к расшифровке/шифрованию.
Есть предложения, как сделать так, чтобы функция автонабора или вставки работала в окне pinentry. Или альтернативный pinentry?
решение1
Тот факт, что принятый ответ использует ту же процедуру, что описана в вопросе, говорит о том, что нет способа включить автонабор KeePass (или даже простое копирование-вставку) для работы с pinentry. Однако это неверно!
Как утверждают другие, pinentry
программы для gpg-agent
(таких как pinentry-gtk-2
) глобально блокируют («захватывают») клавиатуру. Однако, gpg-agent
можно настроить, чтобы отключить это поведение с помощью --no-grab
опции – см.GPG-документация. (Примечание:(Эта опция имеет предупреждение о безопасности в документации. Однако, если вы все равно используете KeePass, я сомневаюсь, что использование pinentry без --no-grab
даст вам дополнительную безопасность.)
Чтобы использовать --no-grab
его по умолчанию gpg-agent
, создайте/отредактируйте файл ~/.gnupg/gpg-agent.conf
(т. е. файл gpg-agent.conf
в .gnupg
каталоге в вашем домашнем каталоге) и добавьте строку
no-grab
к нему (информация gpg-agent.conf
в документации). Таким образом, при каждом gpg-agent
запуске с этого момента он будет использовать эту --no-grab
опцию и pinentry-gtk-2
вести себя как обычное окно (так что вы сможете выполнять автонабор с помощью сочетания клавиш, вставлять текст в текстовое поле и т. д.).
решение2
В Keepass2 «Добавить запись» и установите «Заголовок» на «GPG». Перейдите с вкладки «Запись» на вкладку «Автотип». Выберите «Переопределить последовательность по умолчанию» и установите «{ПАРОЛЬ}».
Перед отправкой электронной почты откройте Keepass2 с паролем Keepass2. Попросите IceDove с Enigmail «Отправить», и должен появиться пароль (блокировка клавиатуры, предотвращение «Ctrl+V» (или любого другого сочетания клавиш, которое вы обычно используете для выполнения автонабора), предотвращение переключения окон «Alt+Tab» и т. д.).
Используйте мышь, чтобы выделить запись "GPG" в Keepass2 и щелкните значок "Выполнить автонабор" в Keepass2 (слева от значка "Найти" и под меню "Справка"). Поскольку последний "фокус" клавиатуры был на поле ввода текста PIN-кода, Keepass2 теперь начнет вводить ваш длинный пароль за вас.
Используйте мышь, чтобы нажать «ОК» в PIN-коде. Готово!
Для получения более подробной информации о "Авто-Типе" (http://keepass.info/help/base/autotype.html).
решение3
- Debian 7.7 (хриплый)
- Флюксбокс 1.3.2-4
- KeePass2 2.28
- моно 2.10.8.1-8
- xdotool 2.20110530.1
- gnupg2 2.0.19-2+deb7u2
По моему опыту, KeePass2 версии 2.28 — первая версия, которая автоматически вводит данные в терминал или не-gui-программу на Debian. Я могу автоматически вводить данные в ssh или pinentry-curses из KeePass 2.28. Автоматический ввод данных не работает с pinentry-gtk-2, когда я его тестирую. Я не использую icedove, поэтому не могу это проверить.