使用 PuTTY 进行身份验证时,“无法使用密钥文件“...\id_rsa”(OpenSSH SSH-2 私钥)”[关闭]

Posted

技术标签:

【中文标题】使用 PuTTY 进行身份验证时,“无法使用密钥文件“...\\id_rsa”(OpenSSH SSH-2 私钥)”[关闭]【英文标题】:"Unable to use key file "...\id_rsa" (OpenSSH SSH-2 private key)" when authenticating with PuTTY [closed]使用 PuTTY 进行身份验证时,“无法使用密钥文件“...\id_rsa”(OpenSSH SSH-2 私钥)”[关闭] 【发布时间】:2020-04-12 17:57:42 【问题描述】:

我已经在目标 Linux host2 上设置了自定义 SSH 密钥。

我可以使用以下命令从 Linux host1host2 进行无密码 ssh。

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 正常工作。

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

【问题讨论】:

【参考方案1】:

PuTTY 不能使用 OpenSSH 格式的密钥。

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

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

【讨论】:

以上是关于使用 PuTTY 进行身份验证时,“无法使用密钥文件“...\id_rsa”(OpenSSH SSH-2 私钥)”[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

Jenkins Publish over ssh 身份验证失败,使用私钥

使用PuTTY设置服务器密钥验证

腻子 - 自动关闭身份验证[关闭]

无法通过 Git for Windows 使用/调试 SSH 身份验证

使用电子邮件进行身份验证时,NestJS 护照身份验证返回 401

使用 Firebase Auth 进行身份验证时,短信验证码请求失败