为什么我的 SSH 密码适用于“plink”而不适用于“ssh”?

为什么我的 SSH 密码适用于“plink”而不适用于“ssh”?

我已将路由器配置为接受带有密码的公钥 SSH 会话。密钥对是使用 Windows 上的 PuTTY 工具生成的。

我可以使用 Putty 工具从 Windows 和 Linux 打开会话,但在 Linux 上却无法这样做ssh

当提示ssh输入密钥文件的密码时,它会失败。例如:

~$ ssh [email protected] -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:~#

为什么?

答案1

OpenSSH 和 Putty 派生工具使用不同的密钥格式。如果您打开普蒂根你将能够导出密钥这与 openssh 兼容,可用于身份验证。

答案2

ppk 是 putty 专有的密钥存储方式。您需要将其导出为 pem,以便 openssh 使用它。

相关内容