如何配置 ssh-agent-forwarding?

如何配置 ssh-agent-forwarding?

我正在努力设置 ssh-agent-forwarding。

我想要做什么:我想将我的公钥放在 ubuntu 服务器上,将私钥放在我的 Windows 机器上。我想连接到 ubuntu 服务器,而不必输入我的私钥密码,因为它存储在 pagent 中。这部分工作完美无缺。下一部分是不起作用的部分。

连接到 ubuntu-server 后,我想通过 git/ssh 进入其他服务器,只需使用 pagent 中我的 Windows 机器上的密钥。

到目前为止我所做的:我有一个安装了 pagent 的 Windows 客户端。密钥是在windows机器上设置的。我可以连接到 ubuntu 服务器并通过我设置的私钥进行授权。我还在腻子中激活了“允许代理转发”。

这就是我的 ssh_config 的样子:

Host *
   ForwardAgent yes

问题是什么:当连接到服务器并输入“ssh-add -l”时,服务器告诉我:“代理没有身份。”

我忘记了什么?

答案1

首先,检查服务器是否允许代理转发(AllowAgentForwardingin sshd_config),如果不允许,则允许并重新启动 sshd 服务。然后仔细检查它是否确实在 PuTTY 中启用。如果两者都很好,请检查腻子的调试日志。如果转发失败,一定有一些信息说明原因。

答案2

我找到了我的问题。

我有

eval $(ssh-agent)

在我的 .bashrc 中。

删除该行后,转发开始工作。

相关内容