Как настроить SSH / PuTTY для использования аутентификации Yubikey OpenPGP?

2429
burnersk

Я хотел бы использовать интерфейс OpenPGP моего Yubikey для аутентификации на моем сервере OpenSSH на моем компьютере с Windows 10, как показано здесь .

Я создал ключи в соответствии с документацией .

gpg --card-status вернет следующее:

Reader ...........: Yubico Yubikey 4 OTP U2F CCID 0 Application ID ...: BEEFBEEFBEEFBEEFBEEFBEEF99990000 Version ..........: 2.1 Manufacturer .....: Yubico Serial number ....: 99999999 Name of cardholder: John Doe Language prefs ...: en Sex ..............: male URL of public key : https://example.com/pgp.asc Login data .......: johndoe Signature PIN ....: required Key attributes ...: rsa4096 rsa4096 rsa4096 Max. PIN lengths .: 127 127 127 PIN retry counter : 3 3 3 Signature counter : 39 Signature key ....: BEEF BEEF BEEF BEEF BEEF BEEF BEEF BEEF BEEF 0001 created ....: 2017-11-20 00:00:01 Encryption key....: BEEF BEEF BEEF BEEF BEEF BEEF BEEF BEEF BEEF 0002 created ....: 2017-11-20 00:00:02 Authentication key: BEEF BEEF BEEF BEEF BEEF BEEF BEEF BEEF BEEF 0003 created ....: 2017-11-20 00:00:03 General key info..: pub rsa4096/BEEFBEEFBEEF0001 2017-11-20 John Doe <john@example.com> sec> rsa4096/BEEFBEEFBEEF0001 created: 2017-11-20 expires: never Cardnumber:BEEF BEEF9999 ssb> rsa4096/BEEFBEEFBEEF0002 created: 2017-11-20 expires: never Cardnumber:BEEF BEEF9999 ssb> rsa4096/BEEFBEEFBEEF0003 created: 2017-11-20 expires: never Cardnumber:BEEF BEEF9999 

Теперь черная дыра поднимается. Как упомянуто в демонстрационной документации, PuTTY должен работать прямо из коробки . Год правильно, я думал, но я попробовал. Конечно, это не будет работать, так как сервер OpenSSH не знает открытую часть ключа аутентификации. Какой сюрприз .

Однако я извлек требуемый OpenSSH-совместимый отпечаток для вставки .ssh/authorized_keys:

gpg --export-ssh-key BEEFBEEFBEEFBEEFBEEFBEEFBEEFBEEFBEEF0003 

В результате мы получили OpenSSH-совместимый отпечаток со следующим комментарием:

ssh-rsa [...omitted...] openpgp:0xBEEF0003 

Я заново установил Yubikey, перезапустил gpg-agent и повторил попытку входа на мой сервер OpenSSH. Это также не сработало.

Поэтому я снова погуглил и нашел другой учебник по использованию Yubikey в качестве аутентификации SSH .

Я настроил способ, которым McQueen Labs рекомендует это, но это также не сработало для меня.

Там, где нет никакой подсказки для пин-кода карты или сообщений об ошибках, кроме того No supported authentication methods available (server sent: publickey).

Это заставляет меня думать, что либо аутентификация SSH такого типа не выполняется методом publickey (что я считаю менее вероятным), либо отсутствует конфигурация.

В связи с этим возникает вопрос: как настроить PuTTY для использования аутентификации Yubikey OpenPGP? А что настраивать на стороне сервера.

Изменить: Интерфейс Yubikey OpenPGP хорошо работает с коммитами Git и т. Д. Но я не могу использовать его для аутентификации SSH.

3
Я только что понял, что у меня есть Keepass с плагином KeeAgent, конкурирующим с gpg-agent для запросов на замазку. Я стал подозрительным, когда окно пароля KeePass появилось после открытия замазки .... Так что дважды проверьте и убедитесь, что у вас нет других конкурсов в фоновом режиме. Работает нормально для меня после отключения плагина KeeAgent. baloan 6 лет назад 1
Нет Keepass работает на машине. Но спасибо за подсказку. А с Pageant я проверил оба состояния. burnersk 6 лет назад 0
Я заметил разницу в поведении после добавления каталогов `C: \ Program Files (x86) \ GnuPG \ bin` и` C: \ Program Files \ PuTTY` в PATH. baloan 6 лет назад 0

0 ответов на вопрос

Похожие вопросы