我获得了一个公共 ssh 密钥、用户名和主机名来访问服务器。我找到了很多关于使用公钥 ssh 身份验证的信息,我找到的所有教程都以执行此命令开头:ssh-keygen -t rsa
。但是当我获得公钥时我该怎么做?我不知道如何将公钥合并到我读过的教程中。
以下是我所收到的示例:
ssh-rsa AAA...(更多)...Y0kQ==[电子邮件保护]
答案1
您无法使用民众键,仅使用私人的密钥。服务器必须知道相应的公钥才能让你进入。因此你需要做的是发送他们 你的公钥(当您执行时生成ssh-keygen -t rsa
)。
答案2
SSH 的工作方式并非如此,以下是标准程序:
- 您生成您的私钥和公钥。
- 你发送你的公钥,但不发送私钥。
- 一旦他们添加了您的公钥,您就可以访问。
如果您没有与公钥配套的私钥,那么您就无法使用该公钥,因为您没有相应的私钥。此私钥需要由您自己生成,并且绝不能共享,因为拥有此私钥的任何人都可以以您的名义访问服务器。
他们可能不知道 SSH 如何工作,他们应该期望你向他们发送一个公钥。
至于为什么它会以这种方式起作用,让我解释一下......
采取第二张图片来自阿默斯特学院的信息页面例如,此图的顶部是服务器,底部是客户端。服务器使用公钥加密消息,然后它可以仅有的使用私钥解密。
因此,为了成功通信,您还需要私钥。为了安全通信,您不能与任何人共享该密钥,因为他们将能够阅读您的消息。