Filezilla/Puttygen 无法识别私钥文件

Filezilla/Puttygen 无法识别私钥文件

我已经为在 Azure 云服务上运行的 Ubuntu 虚拟机生成了密钥 http://www.windowsazure.com/en-us/manage/linux/how-to-guides/ssh-into-linux/

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout myPrivateKey.key -out   myCert.pem

当将私钥加载到 Filezilla 中时,它要求我转换格式,但是,转换密钥时失败,使用 Linux 控制台中的 puttygen 也会发生同样的情况,使用以下命令:

puttygen myPrivateKey.key -o myKey.ppk

在这两种情况下我都出现了以下错误:

puttygen: error loading `myPrivateKey.key': unrecognised key type

顺便说一句,这个密钥没有密码。

我找到了一个关于它的旧帖子,但我正在使用 0.6.3 版本,它比该帖子推荐的版本更新:

http://fixunix.com/ssh/541874-puttygen-unable-import-openssh-key.html

我已经设法通过使用另一个 Mac 版 GUI 客户端 Fugu 解决了这个问题,但我的一位同事使用 Windows,所以我仍然需要解决这个问题。

由于 Filezilla 是事实上的 ftp 客户端,我认为在那里解决问题会更容易。

谢谢

答案1

puttygen 可以识别 openssh 密钥,但不能识别 SSL 密钥。您需要使用 ssh-keygen(1) 生成 ssh 密钥对,然后 puttygen 会将私钥转换为 .ppk 格式。

答案2

按照上面的建议更改密码对我来说很有效。我更改了密码

ssh-keygen -p -f 私钥文件
然后再次尝试使用puttygen创建ppk文件,成功了。

puttygen 私钥文件-o putty 的私钥文件.ppk

在更改密码之前,我收到错误
“puttygen:错误加载'rate_notices_key':无法识别的密钥类型”

在 Windows 和 FreeBSD vm 上都使用 puttygen。谢谢,我找了好久才找到您的答案。当然,我可以用 puttygen 创建一个新密钥对,但是使用 ssh-keygen 并将公钥提交给供应商以获取访问安全 ftp 站点的帐户后,我想使用已有的私钥。

答案3

尝试这个。ssh-keygen -m PEM -t rsa -b 4096 -C "[email protected]"

这将强制添加如下标题

-----BEGIN RSA PRIVATE KEY-----

代替

-----BEGIN OPENSSH PRIVATE KEY-----

答案4

遇到了同样的问题,尝试从我的私钥获取 ppk。将其转换为传统格式有帮助:

openssl pkey -in .\.ssh\jb.2023.key -traditional

相关内容