我不知道不同类型的 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