如何将 PEM 文件作为 SSH 私钥添加到“已知主机”

sme*_*eeb 8 linux ssh ssh-keys openstack

我有 Ubuntu 桌面,我得到了一个 PEM 文件 ( mykey.pem),它是 Linux 服务器的 SSH 私钥。我想弄清楚这个 PEM 文件需要在我的机器上本地放置的位置,以及如何配置/添加到我的“SSH 已知主机”。

谷歌搜索这个主题会发现很多关于创建SSH 密钥的答案/文章,但不会向已知主机添加现有密钥。想法?

bar*_*lop 5

我不知道不同类型的 SSH 密钥。但是您会将公钥放在目标计算机上,而不是您的私钥。您的私钥保持私密。

并且源计算机的公钥应该放在目标计算机上。~/.ssh/authorized_keys 这可以手动完成,也可以通过ssh-keygen命令完成。

我建议你在源计算机上的公钥上做 cat 并在目标计算机上的authorized_keys上做 cat 并确保源的看起来与authorized_keys中的格式相同

known_hosts 文件是自动附加到的文件。您不需要手动编辑它。即使在删除 known_hosts 文件后,您也可以连接。

编辑-

将一些评论纳入答案。公钥来自私钥。通常私钥保持私有,但是 OP 被赋予了私钥,这是不寻常的,但这是一种有趣的方式,因为这意味着目标计算机可以已经拥有他的公钥。这样他就可以登录而无需向目标计算机的authorized_keys 添加任何内容。ssh -i 总是使用私钥。他只需要做ssh -i path/to/privatekeyfile user@dest OP 正在使用“openstack”,一些云服务,正如 openstack 站点所说的 docs.openstack.org/user-guide/content/ssh-into-instance.html$ ssh -i MyKey.pem ubuntu@10.0.0.2所以无论私钥文件的名称是什么是,无论它存储在何处,您都可以在执行时指定ssh -i