Git Permission Denied

    前幾天把本身的Ubuntu系統升級了一下,結果Git連不上GitHub了,其中各類心酸啊,主要是誤信了官方文檔關於測試SSH鏈接成功那部分的提示,很少說直接上乾貨!python


一、本地配置Git用戶名和郵箱名git

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

二、生成SSH RSA keygithub

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

三、將public key複製粘貼到GitHub中
bash

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

四、測試客戶端與GitHub的鏈接,重點來了!ssh

$ ssh -vT git@github.com

    最後一行輸出:
ide

Error: Permission denied (publickey)

    居然被拒了!!!而後我嘗試使用debug模式鏈接測試,彷佛是找不到對應的id_rsa key!
測試

$ ssh -vvv git@githup.com

五、而後我查找了Git的官方文檔,他們提供瞭如下命令修改
網站

$ ssh-add bash
$ ssh-add -l
$ ssh-add ~/.ssh/id_rsa
$ ssh-add -l -E md5

    上面幾個命令的意思是咱們ssh測試鏈接時找不到id_rsa.pub公鑰,因此要經過「ssh-add ~/.ssh/id_rsa」命令給它指明位置,我以前系統升級估計致使這個配置被刷掉了,全部我又從新添加上去了,這時我信心滿滿的覺得問題已經解決了!騷年,你太天真了!仍是「Permission denied」。
debug

    而後我繼續查找緣由,上Google看人家老外是怎麼解決的,順便把老外遇到問題的解決命令我貼一下,雖然對於個人問題然並卵!
md5

# 目錄和文件權限不對也會致使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/

相關文章
相關標籤/搜索