$ssh-Tgit@github-权限被拒绝(公钥)

$ssh-Tgit@github-权限被拒绝(公钥),github,ssh-keys,Github,Ssh Keys,我是第一次使用GitHub。我按照以下说明安装了Git for Windows: 到了生成公共ssh密钥的地步。打开GitBash。生成密钥,将其保存在github.com上的my SSH Public Keys中,现在尝试SSH访问: $ ssh -T git@github.com Permission denied (publickey). 怎么了?说明书上说一切都会好起来的。也许我需要重新启动或等待github.com服务器知道我的密钥 请帮忙 提前谢谢 你需要,然后我也有同样的问题。尽

我是第一次使用GitHub。我按照以下说明安装了Git for Windows:

到了生成公共ssh密钥的地步。打开GitBash。生成密钥,将其保存在github.com上的my SSH Public Keys中,现在尝试SSH访问:

$ ssh -T git@github.com
Permission denied (publickey).
怎么了?说明书上说一切都会好起来的。也许我需要重新启动或等待github.com服务器知道我的密钥

请帮忙


提前谢谢

你需要,然后我也有同样的问题。尽管每一条指令都得到了遵守;公钥被生成并添加到我的Github帐户中,我一直收到错误…直到我重新启动我的机器。
我建议你也这样做。希望这能解决问题。

必须使用
exec ssh代理bash
。它有助于:

$ exec ssh-agent bash
bash-3.1$ ssh-add f:/GIT/.ssh/id_rsa
Enter passphrase for f:/GIT/.ssh/id_rsa:
Identity added: f:/GIT/.ssh/id_rsa (f:/GIT/.ssh/id_rsa)
bash-3.1$ ssh git@github.com
Hi MichaelZelensky! You've successfully authenticated, but GitHub does not provi
de shell access.
Connection to github.com closed.
对于我(windows xp,相当新鲜的安装)来说,在通过mingw32生成ssh密钥时,保存密钥的.ssh目录不存在

它们不是ssh-keygen创建的,而是放在用户目录(C:\Documents and Settings\)的根目录中

这导致权限被拒绝(公钥)错误

简单的解决方案


将密钥文件移动到.ssh目录!(顺便说一句,这似乎是在我说“是”以在主机的真实性之后继续连接时创建的…(消息)

我也遇到了同样的问题,在我将公钥添加到GitHub后,我生成了我的ssh密钥,他们告诉我同样的问题,但发生了什么,你需要授予文件夹权限。ssh,我解决了这个问题,我知道这是最基本的,但我早就预料到了,但检查一下,也许是相同的解决方案

sudo chmod 777 -R .ssh

您需要生成ssh密钥

首先进入ssh目录

cd~/.ssh

现在生成一个ssh密钥

ssh keygen-t rsa-C“YOUREMAILID”

将生成密钥。现在使用此命令安装x-clip

sudoapt安装xclip

现在运行以下命令将密钥复制到剪贴板

xclip-sel clip<~/.ssh/id\u rsa.pub

将id_rsa替换为在生成过程中为保存密钥而指定的文件位置 现在运行下面的命令以了解它是否正确执行

ssh-Tgit@github.com

将出现以下消息

嗨,用户名!您已成功通过身份验证,但GitHub不提供shell访问


现在,您可以在git中执行任何任务,而不出现此问题……

谢谢,c00kiemon5ter!我用的是Windows XP,不是Linux。。。这是第一个注意事项,第二个注意事项——我设置了ssh密钥,这意味着我生成了密钥文件。我是否需要在客户端计算机上执行其他操作?。设置ssh密钥意味着生成两个文件,一个是公共文件(
id\u rsa.pub
),一个是私有文件(
id\u rsa
)。一旦你这样做了,你就需要将id\u rsa.pub添加到你的github帐户中(参见上面我提供的链接)。完成后,您应该能够
ssh
并向github进行身份验证。试试这个:
ssh-Tgit@github.com-我
这种疗法奏效了!需要指定私钥的路径。对于通读此问题的读者来说,这通常被认为是一个坏主意,因为777非常宽容,并且被认为是一个坏主意。
sudo chmod 777 -R .ssh