“无法打开与您的身份验证代理的连接”,即使在 ssh-agent 启动后,ssh-add 也会出错

Posted

技术标签:

【中文标题】“无法打开与您的身份验证代理的连接”,即使在 ssh-agent 启动后,ssh-add 也会出错【英文标题】:"Could not open a connection to your authentication agent" ,ssh-add error even after ssh-agent started 【发布时间】:2016-01-18 13:12:25 【问题描述】:

我需要添加多个ssh密钥,所以我需要执行ssh-add

但我收到Could not open a connection to your authentication agent 的错误

我读过很多帖子,比如Could not open a connection to your authentication agent 和https://superuser.com/questions/901568/ssh-agent-could-not-open-connection

我已经通过

启动了 ssh-agent
eval ($ssh-agent -s)

输出如下: 代理 pid 13524

但仍然出现此错误:

 $ ssh-add ~/.ssh/id_rsa
 Could not open a connection to your authentication agent.

我也设置了

git config --global url."https://".insteadOf git://

我回显一些变量并得到这个:

echo $SSH_AGENT_PID
12340 
echo $SSH_AUTH_SOCK 
/tmp/ssh-ZbRZr10908/agent.10908

PS:我使用的是 Windows 7 和下属公司的网络。

【问题讨论】:

【参考方案1】:

我在网上尝试了很多解决方案,但都没有奏效。我进行了更多研究,发现以下命令有效。

    sudo ssh-agent bash ssh-add /home/user/.ssh/id_rsa

【讨论】:

【参考方案2】:

你把代理的开始放错了。应该是:

eval $(ssh-agent -s)

但如果这没有帮助,无论如何您都可以通过尝试编写env 变量来解决问题:

echo $SSH_AGENT_PID
echo $SSH_AUTH_SOCK

并确保套接字(从第二个echo 开始的路径)存在并且具有合理的 ACL。还要检查代理本身是否由PID 运行。

编辑:

我看到您使用的是 Windows,因此路径可能存在问题。幸运的是,ssh-agent 支持参数 -a 以及要绑定的 UNIX 域套接字的路径或地址。你应该试试:

 ssh-agent -a ./agent_socket

 ssh-agent -a 127.0.0.1:9999

即使在 Windows 上也应该可以工作。

【讨论】:

没用。 eval $(ssh-agent -s) -->"Agent pid 12340" echo $SSH_AGENT_PID -->12340 echo $SSH_AUTH_SOCK -->/tmp/ssh-ZbRZr10908/agent.10908 我看到你正在使用 Windows。它是在cygwin下还是如何?如果不是,很可能以/tmp/ 开头的路径对您不起作用。 hmm,我只是用gitbash来执行这些。 我认为 Windows 上的路径有问题。您应该尝试使用参数-a ./agent_socket 开始ssh-agent。它应该在当前目录中创建套接字,然后 ssh-add 应该能够连接到这个套接字......希望如此。否则,您可以尝试绑定一些本地主机地址,这应该可以肯定:ssh-agent -a 127.0.0.1:9999

以上是关于“无法打开与您的身份验证代理的连接”,即使在 ssh-agent 启动后,ssh-add 也会出错的主要内容,如果未能解决你的问题,请参考以下文章

无法打开与您的身份验证代理的连接。苹果系统

无法打开与您的身份验证代理的连接 opensuse 13.2

AWS搭建SS

「無人之境」SPRING 1st. DROP拍摄花絮 | NSTNonstop® 2020SS

Chrome 克家 18SS最新款 纯正贸易订单!市超时尚情侣款十字雪花梵文印花圆领T恤

Android Studio 报错之 Connect to 127.0.0.1 failed