在 SSH 安全外壳中使用 Putty 生成的密钥

在 SSH 安全外壳中使用 Putty 生成的密钥

在 Windows 中,我需要使用“SSH Secure Shell”软件 v.3.2.9 中 puttygen 生成的密钥 (RSA-2)。该软件有一个密钥导入选项,它要求提供 .pub 文件。我尝试导入 .pub 文件(从 puttygen 导出为 openssh),但无法打开。我还尝试将其指向导出的私钥,但结果相同

答案1

SSH 使用id_rsaid_rsa.pub(分别是私钥和公钥)。并非所有 ssh 实现都真正兼容读取彼此的密钥,对吗?这时额外的步骤可能会有所帮助。在我连接的 Solaris 10 服务器上,我的.ssh目录中有我的密钥对。

我最初将这些文件复制到我的 Windows 机器上并导入到 SecureSHell 3.2.9,但当我尝试使用它们时,我收到了同样的投诉,称无法读取/加载密钥文件。回到我的 Solaris 机器上,我运行ssh-keygen -e -f id_rsa.pub > exportkey.pub,将其复制到 Windows,并尝试使用 SecureSHell 导入。最后,我告诉 SecureSHell 删除我一直在使用的所有密钥并创建一个新的 RSA 密钥。然后我将此密钥导出并上传回我的 Solaris 机器。我没有足够注意,因为它创建了一个.ssh2目录,其中包含一个授权文件,其中包含指向公钥名称的指针,当然还有公钥本身。

在 Solaris 机器上,我做了一个ssh-keygen -i -f .ssh2/pubkey.pub >> .ssh/authorized_keys。现在我可以从 puTTY 或 SecureSHell 登录到 Solaris 机器,无需密码。

相关内容