“无法打开与您的身份验证代理的连接”,即使在 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-agenteval ($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
「無人之境」SPRING 1st. DROP拍摄花絮 | NSTNonstop® 2020SS