Назад | Перейти на главную страницу

Почему моя парольная фраза SSH работает с plink, а не ssh?

Я настроил свой маршрутизатор на прием сеанса SSH с открытым ключом с парольной фразой. Пара ключей была создана с помощью инструментов PuTTY в Windows.

Я могу открыть сеанс как из Windows, так и из Linux с помощью инструментов Putty, но я не могу этого сделать с ssh в Linux.

По запросу ssh для парольной фразы ключевого файла он не работает. Пример:

~$ ssh root@my.domain.com -p 123 -i ./key-ddwrt.ppk
DD-WRT v24-sp2 micro (c) 2010 NewMedia-NET GmbH
Release: 06/09/10 (SVN revision: 14583)
Enter passphrase for key './key-ddwrt.ppk':  <*******>
Enter passphrase for key './key-ddwrt.ppk':  <*******>
Enter passphrase for key './key-ddwrt.ppk':  <*******>

Но используя plink работает:

~$ plink -P 48884 -ssh -l root -i ./key-ddwrt.ppk my.domain.com
Using username "root".
DD-WRT v24-sp2 micro (c) 2010 NewMedia-NET GmbH
Release: 06/09/10 (SVN revision: 14583)
Passphrase for key "Hint phrase to jog my memory":  <*******>

Enter 'help' for a list of built-in commands.

root@DD-WRT:~#

Зачем?

OpenSSH и инструменты, производные от Putty, используют разные форматы ключей. Если вы откроете Puttygen Вы будете в состоянии экспортировать ключ который совместим с openssh для аутентификации.

ppk - это запатентованный способ хранения ключа. Вам нужно экспортировать его как pem, чтобы openssh мог его использовать.