Git:权限被拒绝

时间:2012-02-27 19:38:02

标签: git github

我正在尝试将git设置为第一次使用,并按照以下教程进行操作:

Setting up git

现在我陷入了第5步,所以我在github上尝试了SSH问题 SSH issues。 我生成了所有密钥,并放在C:\ Users \ Admin.ssh中 File Layouts 在尝试

ssh -vT github.com 

虽然我已经在github上粘贴了id_dsa,但我收到了Permission denied错误。 我已禁用防火墙(之前阻止了端口22)并将配置编辑为:

Host github.com
User git
Hostname ssh.github.com
PreferredAuthentications publickey
IdentityFile C:\Users\Admin\.ssh\id_dsa
Port 443 

enter image description here

我在这做错了什么?

4 个答案:

答案 0 :(得分:3)

您应该SSH到git@github.com。即,SSH的用户名始终为git不是您的GitHub用户名。

您也应该将id_dsa.pub粘贴到GitHub中。您应该真正生成新密钥,因为现在您的私钥已被泄露。

答案 1 :(得分:1)

您使用了错误的文件,您需要上传 public 键,该键以.pub结尾。由于Windows默认隐藏文件扩展名,因此您可以确定哪个是.pub文件,因为Windows声称它是“Microsoft Office P ...”文件类型(我假设发布者)。

在记事本等文本编辑器中打开文件,然后将 数据复制到GitHub。另一个是您的私人密钥,您永远不应该与其他任何人共享。

答案 2 :(得分:0)

免责声明:我从未使用过github,我的所有知识都来自于使用我在自己的NAS上设置的git。

我可能错了,但是从我正在阅读的内容来看,您正在尝试使用粘贴到github的文件进行身份验证。这是错误的,因为您的密钥对中有一个公共部分和一个私有部分。您可以使用私有部分将公共部分粘贴到github和authenticate中。

据我记得,dsa和rsa是用于生成密钥对的不同算法。

对于用户名问题,下一个答案是git不是您自己的用户名。

答案 3 :(得分:0)

在你的C:\ Users \ someuser.shh \ dir中,应该只有一个id_rsa和id_rsa.pub。 .pub密钥是您上传到github的密钥。

我会做什么,假设github是你要连接的唯一git服务器,删除所有id_rsa文件并使用以下新方法重新开始:

ssh-keygen -t rsa -C "your_email@youremail.com"

接受默认名称。

配置文件用于识别签入,但电子邮件应与您打算使用的内容相匹配。