Хранение SSH ключей в KeePass

Недавно я писал про генерацию SSH ключей. Теперь встаёт вопрос об их хранении. Можно просто хранить ключи на жёстком диске или флэшке и вручную каждый раз подключать их к агенту с вводом пароля. А можно использовать для этого более удобный способ — KeePass. KeePass — кроссплатформенная свободная программа для хранения паролей, распространяемая по лицензии GPL.

Для того чтобы научить KeePass работать с SSH ключами необходимо скачать плагин KeeAgent с его официального сайта. После установки плагина открываем KeePass с существующей базой данных (или создаём новую, если вы хотите хранить ключи отдельно):

Идём в меню Сервис -> Настройки. И там открываем вкладку KeeAgent. На ней ставим галочку «Always require user confirmation when a client program requests to use a key» (Всегда запрашивать подтверждение пользователя, когда клиентская программа запрашивает ключ):


Сохраняем настройки.

Теперь добавляем новую запись в базу. Название и имя — на своё усмотрение. А вот пароль вводим от нашего приватного ключа:


На вкладке «Дополнительно» добавляем файл приватного ключа.


Наконец, переходим на вкладку «KeeAgent». На ней ставим галочку «Allow KeeAgent to use this entry», тем самым разрешая доступ плагина к ключу. Теперь обратите внимание на нижнюю часть окна: «Key Info». Там должен отобразиться отпечаток ключа и его публичная часть. Если этого не произошло, то проверьте правильность ввода пароля.


Всё, теперь при открытии базы KeePass все ключи будут автоматически подгружаться во встроенный агент ключей. Подключенные ключи можно просмотреть в меню Сервис -> KeeAgent:

Отсутствующие в списке ключи (например, если вы только добавили его и не перезагружали базу) можно добавить нажав на кнопку Add и выбрав запись, содержащую ключ:


Теперь при каждой попытке авторизации с помощью ключей будет выдаваться запрос на разрешение:


А сам факт использования ключа обозначается уведомлением в Windows: