【发布时间】:2014-04-15 18:39:27
【问题描述】:
我想通过 SSH(用于文件处理)访问服务器(托管在 Lonex 中)。为此,我使用 PuTTY。为了安全地做到这一点,我使用了 Pagent,它需要一个公钥和一个私钥。
在服务器中,根目录下的 ssh 文件夹下有两个文件:
id_rsa - 拥有私钥。
id_rsa.pub - 有一个公钥。
鉴于此信息,如果可能,我想为 Pagent 生成必要的文件。
我尝试过的:
使用 PuTTYgen 导入/加载文件 id_rsa 的本地副本。这成功生成了 Pagent 所需的 .ppk 文件。我提到了连接中的 .ppk 文件 -> ssh -> auth。在这个 .ppk 文件中出现了公钥和私钥。但是当我使用 PuTTY 连接时,将生成的 .ppk 添加到 Pagent 时,会出现一个警报提示,指出我没有在注册表中缓存服务器的主机密钥,然后显示服务器的 rsa 密钥指纹,我知道这不是与 Pagent 中显示的正确的一个。此警报提示的事实告诉我我的 Pagrent 密钥不正确。我说的对吗?
评论:
- 鉴于主机已经有一个公钥/私钥对,我相信我应该在给定来自主机的相同公钥的情况下生成一个本地私钥。我无法做到这一点(我阅读了有关 ssh-keygen 命令的信息,但我没有找到如何完成我想要完成的任务)。
- ISP 建议我需要的一切都在这个链接中:http://sourceforge.net/apps/trac/sourceforge/wiki/SSH%20keys#KeyGeneration:PuTTY
我找不到它的用途,因为我没有应该放置我在本地生成的公钥的表格,而且它没有考虑我已经在主机中生成公钥的情况。
- 我问 ISP 是否可以将我在本地生成的公钥添加到 authorized_keys2 文件中,他们拒绝了,因为它是共享主机。
【问题讨论】:
-
事实证明,无论密钥是否正确,第一次总是要求获得信任的批准。据一位前同事说。是这样吗?
-
您的评论的答案是肯定的;我在下面的答案中详细说明了。