问题描述:
环境: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 git@20.205.243.166
惊奇地发现居然正常访问了
看到曙光,clone时把github.com
替换成 20.205.243.166
git clone git@20.205.243.166: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
版权声明:本文为weixin_51558380原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。