2

我通过 ssh 设置对我的服务器的公钥访问。我的本地 Windows 计算机上有一个 .ssh 文件夹。ssh-add <directory>我配置 ssh 以使用该命令添加私钥。我能够使用windowspowershell成功连接到我的服务器。.ssh 目录和授权文件的 chmod 和 Chown 在我的服务器上配置正确。sshd_config 配置正确并指向正确的密钥。

该连接与 shell 完美配合,因此我的服务器上没有问题。但是对于 Eclipse,尤其是它的插件,Egit,Unable to use key file <directory of the key file I loaded into eclipse the same one used by ssh每次尝试将修订提交推送到服务器上的 git 存储库时,我都会收到错误消息。我去了Pref > General > Network > SSH2并添加了正确的私钥,ssh2 主目录也设置正确,实际上公钥和私钥都是使用密钥管理选项卡生成并加载到我的服务器中的。

我对该文件夹和这些键的 Windows 权限设置为允许所有用户做所有事情,只是为了更好地衡量。

现在一个线索是,known hosts选项卡的主机指纹与我的密钥指纹不匹配。我的密钥类似于 f1:19: 等,并且主机指纹不同。我希望我能尽快解决这个问题。任何建议都会很棒。

ssh-add -l = two private keys that I am using. So its not this.

另一个线索是,在进入我的腻子程序并突然更改它的私钥后,我尝试使用 Eclipse 中的密钥访问连接到 ssh,它抛出的错误显示反映了我刚刚在腻子中更改的相同密钥!不知何故,日食似乎正在使用腻子进行公钥访问。我该如何阻止这个?!

4

1 回答 1

2

好的,这是解决方案。无论出于何种原因,Egit 使用 putty 连接到 ssh,使用配置 putty 设置为使用公钥访问服务器。解决此问题的方法是确保 putty 能够使用公钥连接到服务器。如果不能,那么试试这个:

  1. 下载puttygen
  2. 使用 ssh shell 或 eclipse 上的密钥管理选项卡生成 rsa 密钥。不要使用 puttygen 生成密钥。无论出于何种原因,它从未对我有用。
  3. 将您生成的私钥(不是用 puttygen 生成的)加载到 puttygen 中,然后另存为 putty 私钥(.ppk)
  4. 转到 Eclipse 密钥管理选项卡并将其设置为识别新的 .ppk 私钥文件
  5. 最后转到 putty,通过分配地址创建您的服务器配置文件,然后转到 auth 并加载 .ppk 文件。禁用选美。
  6. 保存并尝试使用密钥连接到服务器,如果成功,那么恭喜 Egit 和 Eclipse 现在可以使用密钥建立连接。
于 2012-08-20T11:43:06.833 回答