解决ssh:connect to host github.com port 22: Connection timed out与kex_exchange_identification

一、问题

无法进行clone项目和其他Git操作。执行检测连接命令 ssh -T git@github,com报错
ssh:connect to host github.com port 22: Connection timed out
即:连接22端口超时
在这里插入图片描述

涉及到的文件
C:\Users\JIACHENGER.ssh\config
C:\Users\JIACHENGER.ssh\github_id_rsa
C:\Users\JIACHENGER.ssh\github_id_rsa.pub

C:\Users\JIACHENGER\.ssh\known_hosts生成SSH连接日志

host文件
C:\Windows\System32\drivers\etc\hosts
IP域名本地映射文件,只要在本机中查到了指定的域名,就不会继续去DNS(域名系统)中继续查找。
Windows设置本地DNS域名解析hosts文件配置

配置SSH公私钥可参考我这篇:GitHub&Gitee&Gitlab&极狐(JihuLab)同时生成并配置和检测不同SSH公私钥详细过程

二、解决问题

2.1 ssh:connect to host github.com port 22: Connection timed out

//详细连接过程,-v表示verbose  
ssh -vT git@github.com
或者
ssh -Tvvv git@github.com//nslookup是域名解析工具,8.8.8.8是Google的DNS服务器地址
nslookup github.com 8.8.8.8//使用本机已经设置好的DNS服务器进行域名解析
nslookup github.com

在这里插入图片描述
这里::1IPV6的localhost地址127.0.0.1IPV4的localhost地址。这里基本可以认为是DNS域名解析出了问题,导致GitHub的域名被解析成了本地localhost的ip地址,导致无法连接上GitHub。

2.2 kex_exchange_identification: Connection closed by remote host

此时又出现了一个问题

kex_exchange_identification: Connection closed by remote host
Connection closed by ::1 port 22

在这里插入图片描述

C:\Users\JIACHENGER\.ssh\known_hosts备份,后将known_hosts内容清空,再重新执行检测连接命令 ssh -T git@github,com,这样做偶尔可以连接成功,但过了一会儿还是会报同样的错误
在这里插入图片描述
我同时配置SSH公私钥的除了GitHub以外的其他平台(Gitee&Gitlab&极狐(JihuLab))都可以重新正常连接(过程中需要输入yes确认,表示确认添加主机到可信任列表本机在之前第一次生成SSH公私钥的时候,没有配置访问密码),并且在C:\Users\JIACHENGER\.ssh\known_hosts生成连接日志,如下图:
GitHub&Gitee&Gitlab&极狐(JihuLab)同时生成并配置和检测不同SSH公私钥详细过程
在这里插入图片描述

2.3 排除端口

C:\Users\JIACHENGER\.ssh\config 中,若config中没有指定端口,默认使用22端口,进行SSH连接。
使用443端口(默认情况)config配置如下:
注意:GitHub端口 443 的主机名Hostnamessh.github.com,而不是 github.com

# github
# ssh -T git@github.com
Port 443    
#Port 22 
Host github.com
Hostname ssh.github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/github_id_rsa

使用22端口(默认情况,不配置也是使用22端口)config配置如下:

# github
# ssh -T git@github.com
#Port 443    
Port 22 
Host github.com
Hostname github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/github_id_rsa

仍然还会报同样的错误说明大概率和端口没有关系:
在这里插入图片描述

2.4 在hosts中手动配置GitHub域名映射解决问题

host文件C:\Windows\System32\drivers\etc\hosts手动配置GitHub域名映射,在文件末尾处增加一行 140.82.113.4 github.com。此处的域名github.comC:\Users\JIACHENGER\.ssh\config文件中GitHub配置的Hostname值一致,均为github.com

# github
# ssh -T git@github.com
#Port 443  
#注意:GitHub端口 443 的主机名Hostname为 ssh.github.com,而不是 github.com。  
#Port 22  此处注释,默认也使用22端口
Host github.com
Hostname github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/github_id_rsa

IP域名本地映射文件,只要在本机中查到了指定的域名,就不会继续去DNS(域名系统)中继续查找。
参考:Windows设置本地DNS域名解析hosts文件配置

# Added by Docker Desktop
192.168.1.14 host.docker.internal
192.168.1.14 gateway.docker.internal
# To allow the same kube context to work on the host and the container:
127.0.0.1 kubernetes.docker.internal
# End of section#2023-9-19 19:08:03 配置
#解决ssh:connect to host github.com port 22: Connection timed out等问题
#在hosts中手动配置GitHub域名映射140.82.113.4 github.com

C:\Windows\System32\drivers\etc\hosts中手动配置GitHub域名映射使用时,同时不需要在C:\Users\JIACHENGER\.ssh\config 文件中配置端口,默认使用22端口
如下

# github
# ssh -T git@github.com
#Port 443    
#Port 22 
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/github_id_rsa

如果配置了端口,就会报下面的错误:

在这里插入图片描述

在hosts中手动配置GitHub域名映射后检测GitHub连接(config中不配置端口,默认使用22端口),成功连接

$ ssh -T git@github.com
Hi DJCKING! You've successfully authenticated, but GitHub does not provide shell access.

在这里插入图片描述

三、参考

测试 SSH 连接
在 HTTPS 端口使用 SSH
GitHub&Gitee&Gitlab&极狐(JihuLab)同时生成并配置和检测不同SSH公私钥详细过程
Git问题:解决“ssh:connect to host github.com port 22: Connection timed out”
坑:ssh: connect to host github.com port 22: Connection refused
Windows设置本地DNS域名解析hosts文件配置
ssh远程登录报错:kex_exchange_identification: Connection closed by remote host

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/702495.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WPF 限制输入只能为英文

WPF 限制输入只能为英文 有时输入只能让用户输入英文&#xff0c;那么如何设置输入只能英文&#xff1f; 方法一&#xff1a;在Xaml页面中直接限制文本输入框输入 <Windowxmlns"http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x"http:…

Python实用技巧:输出列表(list)的倒序/逆序的几种方法

Python实用技巧&#xff1a;输出列表&#xff08;list&#xff09;的倒序/逆序的几种方法 &#x1f4c5;2024年02月25日 &#x1f308; 个人主页&#xff1a;高斯小哥 &#x1f525; 高质量专栏&#xff1a;Matplotlib之旅&#xff1a;零基础精通数据可视化、Python基础【高质…

Linux修改shell工具连接端口

nano /etc/ssh/sshd_config 或者 vi /etc/ssh/sshd_config 或者 vim /etc/ssh/sshd_config

gin框架和gorm框架(不断更新......)

Gin怎么做参数校验 在 Gin 框架中&#xff0c;你可以使用 binding 和 validator 包来进行参数校验。 定义请求参数的结构体&#xff1a; type CreateUserRequest struct {Username string json:"username" binding:"required,alphanum,min4,max20"Email…

面试题整理1

文章目录 前言1.socket的过程2.谈谈你对数据库中索引的理解3.现在普通关系数据库用的数据结构是什么类型的数据结构4.索引的优点和缺点5.session、cookie和cache的区别是什么&#xff1f;6.如果有几千个session&#xff0c;怎么提高效率&#xff1f;7.session是存储在什么地方&…

港口人车防撞定位方案

大家好&#xff0c;我是北京华星智控公司小智&#xff0c;今天给大家介绍港口人员定位防撞安全管控方案。 首先说明项目建设背景、目的和面临的挑战&#xff0c;背景介绍&#xff1a; 港口作为货物运输和交换的重要节点&#xff0c;人员和机械设备频繁活动&#xff0c;存在碰撞…

pytorch -- 常见的transform包方法

1. 基础 PIL Image -> Image.open tensor -> ToTensor() [Convert a PIL Image or ndarray to tensor] ndarray -> cv2.imread 2. 常见方法 (1)ToTensor 将PIL/numpy ndarry转化为tensor from PIL import Image from torch.utils.tensorboard import SummaryWrite…

8.7 OpenGL纹理和采样器:压缩纹理图像

压缩纹理图像 Compressed Texture Images 纹理图像也可以使用已存储在已知压缩图像格式中的图像数据来指定或修改&#xff0c;这些格式包括附录D中定义的格式以及由扩展定义的任何额外格式。 void glCompressedTexImage1D( enum target, int level, enum internalformat, siz…

安装虚拟机出现的一些问题

1、在重新打开软件之后出现闪退 解决&#xff1a;[WSL] 解决nsenter: cannot open /proc/320/ns/time: No such file or directory 问题 小白向-CSDN博客2、重新启动xrdp服务命令 解决&#xff1a; sudo systemctl restart xrdp3、将端口从3389改为3390&#xff0c;因为此前…

统信UOS系统窗口特效设置

原文链接&#xff1a;统信UOS系统设置窗口特效 在今天的技术分享中&#xff0c;我们将探讨如何在统信UOS系统上充分利用窗口特效来美化和提升用户界面的交互体验。统信UOS作为一款注重视觉体验和用户友好性的操作系统&#xff0c;提供了丰富的窗口特效设置&#xff0c;让用户可…

利用Java SPI机制实现可插拔的应用插件

自己搭建了个小博客&#xff0c;本文与这篇文章同步&#xff1a; 利用Java SPI机制实现可插拔的应用插件 什么是spi Java SPI&#xff08;Service Provider Interface&#xff09;机制是 Java 提供的一种用于实现组件化、可插拔式架构的机制。通过 SPI&#xff0c;Java 应用…

js之防抖与节流

定义&#xff1a;多次触发事件后&#xff0c;事件处理函数只执行一次&#xff0c;并且在触发操作结束时执行&#xff0c;一般用于scroll事件 原理&#xff1a;对处理函数进行延时操作&#xff0c;若设定的延时到来之前再次触发事件&#xff0c;则清除上一次的延时操作定时器&am…

从零开始学HCIA之广域网技术03

1、LCP中包含的报文类型 &#xff08;1&#xff09;Configure-Request&#xff08;配置请求&#xff09;&#xff0c;链路层协商过程中发送的第一个报文&#xff0c;该报文表明点对点双方开始进行链路层参数的协商。 &#xff08;2&#xff09; Configure-Ack&#xff08;配置…

详解 CSS 的背景属性

详解 CSS 的背景属性 背景颜色 语法&#xff1a; background-color: [指定颜色]; 注&#xff1a;默认是 transparent (透明) 的&#xff0c;可以通过设置颜色的方式修改 示例代码: 运行效果: 背景图片 语法&#xff1a;background-image: url(...); url 可以是绝对路径 也可…

oracle 设置权限 禁止删除用户

在Oracle中&#xff0c;可以通过修改系统角色来控制用户的操作权限。要禁止删除用户&#xff0c;需要将DROP USER这个特定的系统权限从相应的角色中移除。 下面是一种常见的方法&#xff0c;使用SQL语句进行操作&#xff1a; -- 创建新的角色&#xff0c;并为其分配所有必要的…

小苯的IDE括号问题(CD) -----牛客小白月赛87(双链表)

C题&#xff1a;C-小苯的IDE括号问题&#xff08;easy&#xff09;_牛客小白月赛87 (nowcoder.com) D题&#xff1a; D-小苯的IDE括号问题&#xff08;hard&#xff09;_牛客小白月赛87 (nowcoder.com) C题代码&#xff1a; #include<bits/stdc.h>using namespace std…

模型 OIIC(目标、障碍、洞察、挑战)

系列文章 分享 模型&#xff0c;了解更多&#x1f449; 模型_总纲目录。沟通方案工具。 1 OIIC(目标、障碍、洞察、挑战)模型的应用 1.1 OIIC 驱动的汽车配件渠道优化 一家知名的汽车配件制造商&#xff0c;旗下品牌拥有众多产品&#xff0c;其销售渠道广泛&#xff0c;不仅在…

【涨薪技术】掌握加密签名接口测试实战!

接口加密是指在网络传输过程中&#xff0c;将数据进行加密&#xff0c;以保护数据的安全性。接口加密可以采用多种加密算法&#xff0c;如AES、DES、RSA等。测试接口加密的目的是验证接口加密算法的正确性和安全性。 1加密与加密算法 加密&#xff08;Encrypt&#xff09;是将…

平衡,才是世界生生不息的真谛

凤凰涅槃&#xff0c;浴火重生。这句话是很有哲理的&#xff0c;可以运用到命运中。而对于命运&#xff0c;以中为最好&#xff0c;即是平衡。然而&#xff0c;每一个人&#xff0c;都是要经历命运的锤炼&#xff0c;无论怎样锤炼&#xff0c;都要保持一颗善良的心&#xff0c;…

day06-进程线程通信

1. 尝试处理普通信号 #include "test.h"#define MAXSIZE 128void handler(int signo) {if (SIGINT signo){printf("用户按下了 ctrl c 键\n");} }int main(int argc, char const *argv[]) {if (signal(SIGINT, SIG_IGN) SIG_ERR){perror("signal …