诗林 发表于 2025-4-1 00:31:36

【计基】【SSH无法毗连Github】办理ssh链接github超时/拒绝访问(Pycharm Vscode Git 出现此问题都适用)

办理ssh链接github超时/拒绝访问

Git Pycharm 报错ssh: connect to host github.com port 22: Connection refused


1. 情况再现

迩来在某西部都会出差,大概是网络配置问题,导致无法通过ssh毗连到GitHub服务器(Https可以正常毗连)。实验利用ssh -T git@github.com下令无法得到预期结果,且github官方背景未见ssh毗连报文,思量大概是存在FW阻断22端口。
$ ssh -T git@github.com
Connection closed by 140.82.116.4 port 22
本机状态

[*]已认证公钥
[*]已开启合适代理,可以通过https毗连上github服务器
[*]GithubStatus网页查看,Github服务器未崩溃
[*]ssh -vvv git@github.com 下令查看ssh毗连问题
https://i-blog.csdnimg.cn/direct/19c707c3c0c7453fa6396a488c37ccf2.png
2. 办理问题

1. 测试HTTPS端口

偶然,防火墙会完全拒绝允许 SSH 毗连;此时可以实验利用通过 HTTPS 端口建立的 SSH 毗连克隆。
运行以下下令
$ ssh -T -p 443 git@ssh.github.com
若显示
# Hi {USERNAME}! You've successfully authenticated, but GitHub does not
# provide shell access.
则证明可以通过https毗连,第一次毗连需要确认
https://i-blog.csdnimg.cn/direct/866318b249a64891880f49af112cd32d.png
如果你不想要后续操作,只需将相应的ssh字段更改为ssh.github.com:443 如
git clone ssh://git@ssh.github.com:443/YOUR-USERNAME/YOUR-REPOSITORY.git
2. 启用通过HTTPS的SSH毗连

若上一部分,你收获了相同或雷同的回复,则可覆盖你的 SSH 设置来逼迫与 GitHub.com 的任何毗连均通过该服务器和端口运行。

[*]打开ssh的config文件
https://i-blog.csdnimg.cn/direct/01926ceebf18404c9f968a1fb11c5827.png
[*]添加以下字段
Host github.com
    Hostname ssh.github.com
    Port 443
    User git
这段字段的意思是,当访问github.com这个域名的时候,主动解析到ssh.github.com:443

[*]测试
$ ssh -T git@github.com
https://i-blog.csdnimg.cn/direct/9151dda559cc4968a04f77208ee6b3ef.png
git常用操作再复习

1. 设定远程地址相关

git remote -vgit remote set-url origin 新的URL地址
git remote add origin URL地址
2. 拉取和推送

git pull origin main git push origin main
参考文献

以下网页、视频、工具,在差别水平帮助我学习了本文章的内容,在此对提供帮助的技术先辈表示感谢~

[*]SSH 故障排除
[*]在 HTTPS 端口利用 SSH

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 【计基】【SSH无法毗连Github】办理ssh链接github超时/拒绝访问(Pycharm Vscode Git 出现此问题都适用)