解决ssh: connect to host github.com port 22
|
预计 2 min read
问题复现
如果你电脑上的git能在大部分地方进行同步,但是在某处地方的网络下无法同步,并且运行
git pull
或git push
长久没有反映,最后出现ssh: connect to host github.com port 22: Connection timed out
,很可能是你的网络供应商(比如广电网)在出口防火墙上屏蔽了22端口,这意味着你将无法访问其他主机的22端口。 对此,github提供了一种解决方案,允许你使用443端口进行ssh连接,因为443端口是访问https网站所必须的,大部分防火墙都会允许通过,但如果使用代理服务器可能产生干扰。
解决方案
- 首先测试 443 端口是否可用
- 如果此方法可以进行连接成功,则简单配置
- 在
git bash here
进入 git 命令窗口,输入vim ~/.ssh/config
,提示新建文件也没问题,如果有内容则只需将Port 22
改成Port 443
即可。 - 在
.ssh/config
中增加内容如下
- 最后点击 esc 输入
:wq
保存即可。 - 最后验证一下是否链接成功
ssh -T [email protected]
测试是否链接成功。
参考文档
评论