无法打开与您的认证代理的连接。
无法打开与您的认证代理的连接。
我遇到了以下错误:
$ git push heroku master Warning: Permanently added the RSA host key for IP address '50.19.85.132' to the list of known hosts. ! Your key with fingerprint b7:fd:15:25:02:8e:5f:06:4f:1c:af:f3:f0:c3:c2:65 is not authorized to access bitstarter.
我尝试添加键,但是我收到以下错误:
$ ssh-add ~/.ssh/id_rsa.pub Could not open a connection to your authentication agent.
admin 更改状态以发布 2023年5月24日
我尝试了其他解决方案,但都没有成功。我进行了更多的研究,并发现以下命令有效。我正在使用 Windows 7 和 Git Bash。
eval $(ssh-agent)
更多信息请参见:https://coderwall.com/p/rdi_wq (网页存档版本)
你是否启动了ssh-agent
?
在运行ssh-add
命令之前,您可能需要启动ssh-agent
:
eval `ssh-agent -s` ssh-add
请注意,这将启动Windows上的msysgit Bash代理。如果您正在使用不同的shell或操作系统,则可能需要使用命令的变体,例如在其他答案中列出的那些。
请参考以下回答:
- ssh-add抱怨:无法打开到您的身份验证代理的连接
- Git推送需要用户名和密码(包含有关如何使用ssh-agent的详细说明)
- 如何运行(git/ssh)身份验证代理?。
- 无法打开到您的身份验证代理的连接
要自动启动ssh-agent并允许单个实例在多个控制台窗口中工作,请参见登录时启动ssh-agent。
为什么我们需要使用eval
而不是只使用ssh-agent
?
SSH需要两个东西才能使用ssh-agent:在后台运行的ssh-agent实例和设置的环境变量来告诉SSH应该使用哪个套接字来连接代理(如果我没记错的话,是SSH_AUTH_SOCK)。如果您只运行ssh-agent,则代理会启动,但SSH将不知道在哪里找到它。
来自这个评论。
公钥与私钥
此外,每当我使用ssh-add
时,我总是将私钥添加到其中。 文件~/.ssh/id_rsa.pub
看起来像是一个公钥,不确定是否能够正常工作。您是否有一个~/.ssh/id_rsa
文件? 如果您在文本编辑器中打开它,它是否表示它是私钥?