port-22-to-443.md

May 20, 2026 · View on GitHub

2024年01月16日,这天要更新《二哥的 Java 进阶之路》,远程连接到服务器上后,执行 git pull 命令,结果报错:

git pull
ssh: connect to host github.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.

以为服务器被入侵了,因为我之前操作的时候一直都是 OK 的,并且我看服务器上的 GitHub 密钥也都在。

就很奇怪,于是我在 GPT 的帮助下使用 ssh -vvv git@github.com 命令诊断了一下,结果如下所示:

猜测的原因是,GitHub 限制了 22 端口,因为我看了一下服务器上的 22 端口,防火墙下是打开的。

于是我又用这个命令 ssh -T -p 443 git@ssh.github.com 测试了一下,结果如下所示:

表明成功通过端口 443 建立了 SSH 连接到 GitHub,这意味着现在可以使用 SSH 方式进行 Git 操作(如克隆、推送、拉取等)。

只不过原有的配置是 22 端口,现在要改成 443 端口。怎么改呢?

先执行下面的命令,查看现在的远程仓库地址:

git remote -v

然后通过下面的命令修改远程仓库地址:

git remote set-url origin ssh://git@ssh.github.com:443/用户名/仓库名.git

然后就可以看到端口修改成功了。

再执行 git pull 命令,就可以正常拉取代码了。


GitHub 上标星 17000+ 的开源知识库《二哥的 Java 进阶之路》第一版 PDF 终于来了!包括Java基础语法、数组&字符串、OOP、集合框架、Java IO、异常处理、Java 新特性、网络编程、NIO、并发编程、JVM等等,共计 32 万余字,500+张手绘图,可以说是通俗易懂、风趣幽默……详情戳:太赞了,GitHub 上标星 17000+ 的 Java 教程

微信搜 沉默王二 或扫描下方二维码关注二哥的原创公众号沉默王二,回复 222 即可免费领取。