問題描述:
環境:ubuntu 20.04 or 計網課程cs144虛拟機
問題:在github添加ssh秘鑰之後,本地還是無法正常通過publickey來ssh和clone,如果沒有在~/.ssh/config檔案中添加
Preferred Authentications publickey
的話還會自動切換到密碼登入模式,但這個密碼是git自己建立的,我也不知道是多少,輸不對。
表現形式:
相同的操作,在gitee中添加好ssh秘鑰後,虛拟機上就可以正常ssh。
試着
ping github.com
也是沒問題的,甚至速度比校内伺服器還快。
最終解決方法:
靈感來源:CSDN
通過線上工具域名轉IP将域名
github.com
轉換為
20.205.243.166
,然後終端執行
ssh [email protected]
驚奇地發現居然正常通路了
看到曙光,clone時把
github.com
替換成
20.205.243.166
git clone [email protected]:NJU-CN-course-427lab/lab1-Clare0354.git
成了!
原因猜測:為了通路github開了FastGithub,這個軟體的工作原理和DNS、IP有關,或許是這個原因?
但不開這個軟體我甚至開不了github,也不知道關了FastGithub時能否正常ssh。
參考過的教程:
- Git 配置SSH的端口号 感覺沒什麼用,可能是話沒說完
- 改秘鑰版本 沒什麼用
- 改網段 沒什麼用
- 要輸入的密碼是什麼,怎麼看 配gitlab時生成的,github不知道有沒有
- 修改server的配置 github找不到
- 重新開機遠端倉庫的gitlab 一遠端倉庫沒終端二不是gitlab
- 修改gitlab配置,添加端口22 一不是gitlab二我在config裡加上22端口還是不行
- 修改自己添加的.ssh/config中的HOST 沒什麼用
- 改用http443建立ssh連接配接 我虛拟機上不行
- win10下能ssh但clone需要輸密碼 情況不适用
- 改域名映射 解決靈感來源
其他參考:deploy key:隻能應用于這個倉庫,不能通路其他倉庫,但有一個選項可以讓這個key權限更新到ssh key級别,能通路所有倉庫ref