Git Permission Denied

  前几天把自己的Ubuntu系统升级了一下,结果Git连不上GitHub了,其中各种心酸啊,主要是误信了官方文档关于测试SSH连接成功那部分的提示,不多说直接上干货!


1、本地配置Git用户名和邮箱名

1
2
$ git config  - - global  user.email  "xxx@qq.com"
$ git config  - - global  user.name  "xxx"

2、生成SSH RSA key

1
$ ssh - keygen  - t ras  - "xxx@qq.com"

3、将public key复制粘贴到GitHub中

1
settings  - - > SSH  and  GPG keys  - - > New SSH key

4、测试客户端与GitHub的连接,重点来了!

1
$ ssh  - vT git@github.com

    最后一行输出:

1
Error: Permission denied (publickey)

    竟然被拒了!!!然后我尝试使用debug模式连接测试,似乎是找不到对应的id_rsa key!

1
$ ssh  - vvv git@githup.com

5、然后我查找了Git的官方文档,他们提供了以下命令修改

1
2
3
4
$ ssh - add bash
$ ssh - add  - l
$ ssh - add ~ / .ssh / id_rsa
$ ssh - add  - - E md5

    上面几个命令的意思是我们ssh测试连接时找不到id_rsa.pub公钥,所以要通过“ssh-add ~/.ssh/id_rsa”命令给它指明位置,我之前系统升级估计导致这个配置被刷掉了,所有我又重新添加上去了,这时我信心满满的以为问题已经解决了!骚年,你太天真了!还是“Permission denied”。

    然后我继续查找原因,上Google看人家老外是怎么解决的,顺便把老外遇到问题的解决命令我贴一下,虽然对于我的问题然并卵!

1
2
3
4
5
6
7
8
9
10
# 目录和文件权限不对也会导致SSH连接不上哦!
 
chmod  755  / home
chmod  700  .ssh
chmod  600  .ssh / *
 
# 检查ssh_config和sshd_config配置
 
IdentityFile ~ / .ssh / id_rsa
PubkeyAuthentication yes

    最后我无意中在一个网站上看到有一个人说,某些Linux kernel版本上的SSH连接测试会有问题,这句话瞬间点醒了我,会不会我已经可以连接了,但是就是由于这个bug导致我一直显示连接被拒呢!我在GitHub上新建了一个测试仓库,然后在本地克隆它,然后成功了!我又在这个仓库中添加了一些测试文件也成功上传到了GitHub上,这时我心里只有一句话“mmb”!


附上官网文章:https://help.github.com/articles/error-permission-denied-publickey/

本文转自戴柏阳的博客博客51CTO博客,原文链接http://blog.51cto.com/daibaiyang119/2043749如需转载请自行联系原作者

daibaiyang119
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值