ssh: connect to host codeup.aliyun.com port 22: Connection timed out fatal: Could not read from remo

异常复现:

在idea中拉取远端代码或是push时出现异常,停顿了好一会之后显示如下报错信息:

ssh: connect to host codeup.aliyun.com port 22: Connection timed out
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.

分析/解决:

这个报错信息意思是22端口超时,意味着有些东西阻止了你的连接

存在情况一:

防火墙设置:要确保你的防火墙或安全软件没有阻止SSH连接

存在情况二:

公匙出现问题或者被篡改;这种情况一般出现在使用公司的电脑或其他有可能出现多git账号的时候。

这里先去检查一下有没有公匙

cd~           进入当前用户文件夹

cd .ssh     进入.ssh文件夹

ls              展示内容

这里可以看到我是有公匙的,即id_xxx.pub,这里如果没有的话可以按下面的步骤去生成再配置

 通过命令:

 ssh-keygen -t ed25519 -C "邮箱名"

生成公匙

cat ~/.ssh/公钥名              打开公匙内容

复制下面的这一串

去git上面重新配置ssh公匙

GitHub: Let’s build from here · GitHubGitHub is where over 100 million developers shape the future of software, together. Contribute to the open source community, manage your Git repositories, review code like a pro, track bugs and features, power your CI/CD and DevOps workflows, and secure code before you commit it.icon-default.png?t=N7T8https://github.com先在电脑登录后点击右上角头像进入设置

点击ssH and GPG keys

将刚刚复制的公匙内容粘贴到此处,标题自己起一个,点击确认即可 

 

再去执行git clone拉代码测试就可以啦

如果到这里依旧有问题,继续往下排查↓↓↓

存在情况三:

公钥已经加到git上,可是本地进行操作依然报错;这种情况一般是问题出现在网络上,很可能是由于网络供应商(比如政府专用内网或所在的开发内网)在出口防火墙上屏蔽了22端口,这意味着当前电脑将无法访问其他主机的22端口。

另外通过测试,如果电脑上的git能在大部分地方进行同步,但就是在这个地方的网络下无法同步,并且运行git pullgit push好久都没有反应,

最后出现ssh: connect to host github.com port 22: Connection timed out

对于这种情况,github提供了一种解决方案,即允许使用443端口进行ssh连接,因为443端口是访问https网站所必须的,大部分电脑的防火墙都会允许通过,但要注意若使用443端口的话代理服务器可能产生干扰。如果连443端口都被屏蔽,那应该无法浏览这篇文章。下面就开始配置443端口

1、可以执行以下命令:

ssh -T -p 443 git@ssh.github.com

2、如果报错ssh: connect to host github.com port 22: Connection timed out,就去用户文件夹下面找到.ss文件夹,如果没有config文件,就手动建一个文本文档,命名为config,然后把后缀名删掉:

3、编辑内容输入为以下文本并保存:

Host github.com
Hostname ssh.github.com
Port 443
User git

意思是使每次ssh连接github时都通过443端口。添加这些内容后,将会指定ssh连接git@github.comgit@ssh.github.com走443端口 

4、再执行命令  ssh -T -p 443 git@ssh.github.com

5、如果出现询问是否用443,键入yes即可

6、

7、

8、

存在情况四:

443端口等一系列配置都已经正确操作,但依旧无法正常使用;我就是处于这种情况:现在请看一下你的一般

git Bash here里面执行以下命令:

ssh -T -p 443 git@ssh.github.com

如果出现报错 

则有可能是因为网络的其他配置出了问题,也有可能是网络的后台服务被强制篡改或手动停止了,这里可以检查一下网络标识,如果如下图所示出现两行,且有“未识别的网络”,那么基本可以断定,是网络配置的某个地方被修改了

解决方法:

先右键网络打开“网络和 Internet"设置

点击“更改适配器选项”

属性 

这里点击安装 

选择协议,点击添加,再确定即可

再测试拉取或推一下代码试试,一般这个问题到这里即可解决,如果还是不行,则表示电脑的某网络相关服务被篡改或手动停用了,这里可以Win+R键输入services.msc 打开服务

 找到DHCP Client,选择自动,点击确定即可。这里通过描述都可以明显看到,这个服务极其重要,就是为网络连接使用的,一般是在用户对电脑服务进行某些特殊操作或出现恶意软件篡改所导致的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值