2013-10-24 52 views
0

我用尽了一切我能想到的,我仍然不断收到此错误:Git Clone To Server Responds权限被拒绝(publickey)。致命:远程端挂机意外

我的步骤:

1)生成本地密钥对的〜/ .ssh

2)将该密钥复制到我的配置文件的BitBucket SSH密钥。

3)增加该密钥到我的服务器在的〜/ .ssh

是否有别的东西,我该怎么办?我只是做一个混帐克隆回购(SSH)

+0

究竟是什么错误?也许你的SSH私钥(chmod 400)的权限? –

+0

权限被拒绝(publickey)是它给我的唯一错误 –

+0

我是否需要生成私钥?我是Git部署的绝对新手。不需要你给我一个啧啧,但也许让我朝着正确的方向前进。我生成的公钥,这就是它 –

回答

2

首先,SSH是相当挑剔你的文件和目录权限。请仔细检查您的.ssh目录是否为chmod 700,您的密钥位于名为id_rsa的文件中,该文件为chmod 600,并且这两个文件均归您所有。

其次,是否有一个ssh代理程序运行? ssh-agent是一项服务,可以缓存您的凭证,因此您不必在每次您获取和推送时输入密码,如果您想要它们,可以使用超时等。 ssh(因此git)会询问您的代理是否在运行。

要向代理添加密钥,请使用ssh-add。如果您的密钥不在名为id_rsa的文件中,您还可以通过显式路径添加它:ssh-add ~/.ssh/my_other_rsa。一旦添加了密钥,您应该能够看到在ssh-add -l输出中列出的指纹。

如果您没有运行代理(您会看到“Could not open a connection to your authentication agent.”),那么它可能有助于启动ssh-agent bash(然后添加您的密钥)。如果有效,您可以使用some shell tricks为服务器上的每个会话自动启动一个。

+1

哦,我想通了。谢谢你们,事实证明我将错误的密钥复制到我的服务器上的.ssh目录中。 –

相关问题