"Unable to use key file "...\id_rsa" (OpenSSH SSH-2 私钥)" 使用 PuTTY 进行身份验证时

"Unable to use key file "...\id_rsa" (OpenSSH SSH-2 private key)" when authenticating with PuTTY

我在目标 Linux host2.

上设置了自定义 SSH 密钥

我可以使用以下命令从 Linux host1 无密码 ssh 到 host2

ssh -i /app/misc/myssh_keys/my_id_rsa myuser@host2

然后我将 /app/misc/myssh_keys/my_id_rsa 复制到我的 Windows 位置 C:\putty\my_id_rsa

然后我尝试从 Windows 连接到 Linux host2,但它提示我输入密码而不是无密码登录。

下面是我的命令:

C:\putty\putty.exe -ssh -i C:\putty\my_id_rsa myuser@host2

我得到以下带有密码提示的输出:

Unable to use key file "C:\putty\my_id_rsa" (OpenSSH SSH-2 private key)
Using username "myuser".
myhost@host2's password:

以下是 Linux host2

的系统详细信息
uname -a
Linux host2 3.10.0-1062.1.2.el7.x86_64 #1 SMP Mon Sep 16 14:19:51 EDT 2019 x86_64 x86_64 x86_64 GNU/Linux

以下是 Windows 主机

的系统详细信息
C:\Users>systeminfo

Host Name:                 mywinhost
OS Name:                   Microsoft Windows 7 Professional
OS Version:                6.1.7601 Service Pack 1 Build 7601
OS Manufacturer:           Microsoft Corporation
OS Configuration:          Member Workstation
OS Build Type:             Multiprocessor Free
Registered Owner:          hp
Registered Organization:   Hewlett-Packard Company
Product ID:                00321-OEM-8552671-07008
Original Install Date:     01-04-2017, 13:05:14
System Boot Time:          15-12-2019, 14:00:52
System Manufacturer:       HP
System Model:              HP 280 G2 MT (Legacy)
System Type:               x64-based PC
Processor(s):              1 Processor(s) Installed.
                           [01]: Intel64 Family 6 Model 94 Stepping 3 GenuineIntel ~3700 Mhz
BIOS Version:              AMI A0.25, 06-02-2017

我在 Stack Overflow 上的某处读到我可能必须使用 PuTTYgen 转换 C:\putty\my_id_rsa 密钥,但我将不胜感激确切的命令以及我需要执行的所有步骤才能使 ssh 正常工作。

任何其他解决方案也将不胜感激。

PuTTY 无法使用 OpenSSH 格式的密钥。

您需要先将密钥转换为 .ppk 格式。为此,使用 PuTTY 包中的 PuTTYgen

  • 运行 PuTTYgen;
  • 加载加载OpenSSH格式的私钥;
  • 保存私钥.ppk格式保存私钥