知识库 知识库
首页
  • Hyperskill - Java

    • Java basic
    • Java OOP
    • 应知
    • 扩展
    • IO & Stream
    • Error & Exception
    • Algorithm & Data structure
    • Design pattern
    • Web
    • Spring boot
  • 练习题

    • 选择题 & 填空题
    • 代码题
  • Frank - Java与生活 (OOP)

    • 参考资料
    • Java基础
    • OOP上半部分
    • OOP下半部分
  • Frank - Java API进阶

    • Base API
    • Unit Test and main function
  • 学习笔记
  • 学习笔记

    • 数据库
  • Frank - MySQL删库跑路

    • 安装、连接、配置
    • 基本操作——数据库
    • 基本操作——表
    • 基本操作——数据
    • 数据类型
    • 列属性完整性
    • 数据库设计思维
    • 单表查询
    • 多表查询
  • 学习笔记

    • 其它
  • Frank - Linux现代方法

    • 必知
    • 命令
    • 技巧
  • 技术文档
  • Git
  • GitHub技巧
  • 前端
  • Khan Academy - 语法
  • Monthly
  • 阅读
  • Others
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
收藏
  • 标签
  • 归档
GitHub (opens new window)

Jim FuckPPT

Java小学生
首页
  • Hyperskill - Java

    • Java basic
    • Java OOP
    • 应知
    • 扩展
    • IO & Stream
    • Error & Exception
    • Algorithm & Data structure
    • Design pattern
    • Web
    • Spring boot
  • 练习题

    • 选择题 & 填空题
    • 代码题
  • Frank - Java与生活 (OOP)

    • 参考资料
    • Java基础
    • OOP上半部分
    • OOP下半部分
  • Frank - Java API进阶

    • Base API
    • Unit Test and main function
  • 学习笔记
  • 学习笔记

    • 数据库
  • Frank - MySQL删库跑路

    • 安装、连接、配置
    • 基本操作——数据库
    • 基本操作——表
    • 基本操作——数据
    • 数据类型
    • 列属性完整性
    • 数据库设计思维
    • 单表查询
    • 多表查询
  • 学习笔记

    • 其它
  • Frank - Linux现代方法

    • 必知
    • 命令
    • 技巧
  • 技术文档
  • Git
  • GitHub技巧
  • 前端
  • Khan Academy - 语法
  • Monthly
  • 阅读
  • Others
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
收藏
  • 标签
  • 归档
GitHub (opens new window)
  • 学习

  • 编程

  • 面试

  • 心情杂货

  • 遭遇问题

    • ssh connect to host github.com port 22 Connection refused
      • 遭遇问题
      • 查找原因
      • 解决方案
        • 方案一 更换22端口为443
        • 方案二 在系统hosts文件中添加IP和域名映射
      • 测试
      • github.com DNS解析污染导致 SSH 无法连接到 GitHub
  • 实用技巧

  • Interesting

  • 友情链接
  • Khan Academy - 算法

  • 更多
  • 遭遇问题
Jim
2022-09-26
目录

ssh connect to host github.com port 22 Connection refused

参考:https://iter01.com/688100.html

# 遭遇问题

Git push 到GitHub仓库时失败:

ssh: connect to host github.com port 22: Connection refused
1

# 查找原因

测试

ssh -T git@github.com
1

ssh -T user@host命令通常用于测试连接情况。

详细日志(上面的命令加个选项-v)

ssh -vT git@github.com
1
  • -v表示verbose,會打出详细日志。
  • -T表示Disable pseudo-tty allocation,连接禁止分配伪终端(当用ssh或telnet等登录系统时,系统分配给我们的终端就是伪终端。)。
$ ssh -vT git@github.com
OpenSSH_9.0p1, OpenSSL 1.1.1o  3 May 2022
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Connecting to github.com [::1] port 22.
debug1: connect to address ::1 port 22: Connection refused
debug1: Connecting to github.com [127.0.0.1] port 22.
debug1: connect to address 127.0.0.1 port 22: Connection refused
ssh: connect to host github.com port 22: Connection refused
1
2
3
4
5
6
7
8

從上面的資訊馬上就發現了詭異的地方,連線github.com的地址居然是::1和127.0.0.1。前者是IPV6的localhost地址,後者是IPV4的localhost地址。

到這裡問題就很明確了,是DNS解析出問題了,導致github.com域名被解析成了localhost的ip地址,就自然連不上GitHub了。

Windows下執行ipconfig /flushdns 清楚DNS快取後也沒用,最後修改hosts檔案,增加一條github.com的域名對映搞定。

https://iter01.com/688100.html

# 解决方案

方案一:更换22端口为443

方案二:在系统hosts文件中添加IP和域名映射

如果使用了其中一个方案还存在某些问题的话,可以考虑两个方案可同时使用。

# 方案一 更换22端口为443

在./ssh下的config文件(如无该文件则新建即可)中添加如下内容:

Host github.com
  Hostname ssh.github.com
  Port 443
1
2
3

# 方案二 在系统hosts文件中添加IP和域名映射

查询 github.com IP地址

nslookup github.com 8.8.8.8
1

8.8.8.8是Google的DNS伺服器地址

或者使用https://www.ipaddress.com/网站查询IP地址

打开本机hosts文件,追加一条映射:

140.82.114.3    github.com
1

Windows 的 hosts 文件在 C:\Windows\System32\drivers\etc 路径下。

# 测试

ssh -T git@github.com
1

若得出如下结果,则成功解决该问题:

Hi JimFKppt! You've successfully authenticated, but GitHub does not provide shell access.
1

# github.com DNS解析污染导致 SSH 无法连接到 GitHub

ssh: connect to host github.com port 22: Connection refused
1

DNS解析污染有两种可能的原因:

  • DNS解析被运营商劫持
  • 用了科学上网
编辑 (opens new window)
#遭遇问题
上次更新: 2022/12/03, 17:31:39
反向拆解让人上瘾的套路,找回自律
2分钟规则

← 反向拆解让人上瘾的套路,找回自律 2分钟规则→

最近更新
01
《挪威的森林》
04-14
02
青钢影
04-14
03
Processing strings
02-18
更多文章>
Theme by Vdoing | Copyright © 2022-2023 Jim Frank | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式