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

6
我是第一次使用GitHub。我按照以下说明安装了Git for Windows:http://help.github.com/win-set-up-git/ 生成公共SSH密钥时,打开Git Bash。生成密钥后,在github.com上保存了我的SSH公钥,现在尝试进行ssh访问。
$ ssh -T git@github.com
Permission denied (publickey).

怎么回事?指令说一切都应该正常,也许我需要重启或等待github.com服务器识别我的密钥?

请帮忙。

先谢谢了!

7个回答

7

谢谢,c00kiemon5ter!我使用的是Windows XP,而不是Linux……这是第一个注意点,第二个是——我设置了我的ssh密钥,也就是生成了密钥文件。在我的客户端机器上还需要做些什么吗? - Michael Zelensky
2
设置您的_ssh密钥_,意味着生成两个文件,一个公共文件(通常为id_rsa.pub)和一个私有文件(id_rsa)。一旦完成,您需要将id_rsa.pub添加到您的github帐户中(请参见我提供的链接)。完成后,您应该能够通过ssh -T git@github.com -i <path-to-id_rsa>进行身份验证并连接到github。 - c00kiemon5ter
这个解决方法有效!需要指定私钥的路径。 - Michael Zelensky

4
    ssh-keygen -t rsa
    copy the key generated in the file ~/.ssh/id_rsa.pub (open with notepad)
    paste this key in the "add ssh key" section of your github account

3

我必须使用exec ssh-agent 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.

3

我有同样的问题。尽管按照每个指令进行了操作,生成了公钥并且添加到了我的Github账户,但我一直收到错误信息......直到我重启了我的机器。 我建议你也这么做。希望能解决这个问题。


2
对于我来说(Windows XP,相当新的安装),通过mingw32生成ssh密钥时,我要保存密钥的.ssh目录不存在。
ssh-keygen没有创建它,而是将它们放在用户目录的根目录下(C:\ Documents and Settings \)。
这导致了权限被拒绝(公钥)错误。
简单的解决方案...
将密钥文件移动到.ssh目录中!(顺便说一句,在我回答“是”以后继续连接主机真实性的消息时,似乎已经创建了该目录)。

0

你需要生成你的ssh密钥

首先进入ssh目录

cd ~/.ssh

现在生成一个ssh密钥

ssh-keygen -t rsa -C "你的电子邮件地址"

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

sudo apt install xclip

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

xclip -sel clip < ~/.ssh/id_rsa.pub

用生成密钥时提供的文件位置替换id_rsa,现在运行以下命令以知道它是否正确执行

ssh -T git@github.com

下面会出现以下消息

Hi USERNAME! You've successfully authenticated, but GitHub does not provide shell access.

现在你已经可以在git中执行任何任务而不会出现此问题...


-2

我曾经遇到过同样的问题,我生成了我的ssh-keygen,在将我的公钥添加到GitHub后,他们告诉我有同样的问题。但是你需要给.ssh文件夹授权,我解决了这个问题,我知道这很基础,但我忘记了,不过检查一下,也许是同样的解决方案。

sudo chmod 777 -R .ssh

1
对于阅读此问题的人来说,这通常被认为是一个坏主意,因为777非常宽容,被认为是几乎所有事情的坏主意。 - John Von Neumann

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接