我是否正确使用了 SSH 密钥?

我是否正确使用了 SSH 密钥?

我最近创建了我的通过 ssh-keygen -t rsa -f ~/.ssh/my_keyname -C pebaken 的密钥对

所以我查看了位于我的主用户目录中的 .ssh 文件夹,发现了 2 个密钥my_keyname.pub我的键名以及一个名为“authorized_keys”的文件夹。

我尝试使用公钥my_keyname.pub连接到我的虚拟机时,我得到>已断开连接:没有可用的受支持的身份验证方法(服务器发送:公钥)

我以为公钥应该是你保留的那个私钥会留在服务器上吗?

然后我尝试了没有任何扩展名的密钥,将其放入 puttygen 中并立即得到 > 成功导入外键(OpenSSH SSH-2 私钥(旧 PEM 格式))。要将此密钥与 Putty 一起使用,您需要使用“保存私有”命令将其保存为 Putty 自己的格式。

我到底是否使用了私钥,因为它有效并且我成功连接到了我的虚拟机。

答案1

就在名字里。

私钥是您自己保管的密钥,切勿与任何人共享,最好使用密码对其进行加密。

公钥可以分发到任何地方,您可以在任何地方以纯文本形式发布它。

公钥需要在远程服务器上确认您拥有适当的密钥,私钥不应离开您的本地环境。

公钥可以从私钥导出。

验证 ssh 客户端时,将向远程服务器提供一个公钥(将从本地私钥派生)。服务器将确认公钥能够对其进行身份验证,并提供除非您拥有私钥否则无法回答的质询。您的客户端使用您的私钥回答挑战,远程服务器让您登录。

答案2

公钥用于复制到~/.ssh/authorized_keys您将连接的远程主机上(这是一个文件,而不是目录)。

私钥用于从本地系统连接。

有关的:

相关内容