Skip to content

Instantly share code, notes, and snippets.

@Tamal
Last active April 16, 2024 13:32
Show Gist options
  • Save Tamal/1cc77f88ef3e900aeae65f0e5e504794 to your computer and use it in GitHub Desktop.
Save Tamal/1cc77f88ef3e900aeae65f0e5e504794 to your computer and use it in GitHub Desktop.
Solution for 'ssh: connect to host github.com port 22: Connection timed out' error
$ git clone git@github.com:xxxxx/xxxx.git my-awesome-proj
Cloning into 'my-awesome-proj'...
ssh: connect to host github.com port 22: Connection timed out
fatal: Could not read from remote repository.
$ # This should also timeout
$ ssh -T git@github.com
ssh: connect to host github.com port 22: Connection timed out
$ # but this might work
$ ssh -T -p 443 git@ssh.github.com
Hi xxxx! You've successfully authenticated, but GitHub does not provide shell access.
$ # Override SSH settings
$ vim ~/.ssh/config
```
# Add section below to it
Host github.com
Hostname ssh.github.com
Port 443
```
$ ssh -T git@github.com
Hi xxxxx! You've successfully authenticated, but GitHub does not
provide shell access.
$ git clone git@github.com:xxxxxx/xxxxx.git my-awesome-proj
Cloning into 'my-awesome-proj'...
remote: Enumerating objects: 15, done.
remote: Counting objects: 100% (15/15), done.
remote: Compressing objects: 100% (14/14), done.
remote: Total 15 (delta 0), reused 15 (delta 0), pack-reused 0
Receiving objects: 100% (15/15), 22.90 KiB | 4.58 MiB/s, done.
@ha1o0
Copy link

ha1o0 commented Jan 25, 2024

thx!

@sgao52
Copy link

sgao52 commented Jan 25, 2024

For guys who are confused about "How to save config files"in Vim:
Press ESC to enter command mode.
Type :w and press Enter to save changes.
Type :q and press Enter to quit.

@kbxu
Copy link

kbxu commented Jan 26, 2024

newbi!

@AzenXu
Copy link

AzenXu commented Jan 27, 2024

new bee!!!

@tao996
Copy link

tao996 commented Jan 27, 2024

wa..thank you very much

@benhuang1024
Copy link

good

@xavierskip
Copy link

work for me!!! THK

@tyl124
Copy link

tyl124 commented Jan 28, 2024

niubi !

@tea-coffee-egg
Copy link

thanks!

@yamakasiluke
Copy link

lgtm

@hugokung
Copy link

thanks

@dablelv
Copy link

dablelv commented Jan 29, 2024

Why? the port 22 doesn't work?

What happened? I am also confused.

@UjuiUjuMandan
Copy link

UjuiUjuMandan commented Jan 29, 2024

What happened? I am also confused.

This gist is probably to workaround some GitHub server outage in the past, but it got hot recently in Chinese community. Why?

Because the Great Firewall of China has blocked the default IP of github.com, 20.205.243.166, since Jan 16.

Chinese programmers have coexisted harmoniously with GFW and are not even aware of its existence.

Even if you never care about politics, it would first come to you. TALK ABOUT POLITICS!


Update: The block was lifted on Jan 31.

@ShujiaHuang
Copy link

niubility!!!!

@gujiu21L
Copy link

Ohhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh....
You're amazing!!!
I couldn't have done it without you!

@xiao-guan
Copy link

有用,强啊铁汁

@YuSheng1223
Copy link

it works,thanks

@18639710721
Copy link

nice

@Gavinluo
Copy link

niubility!!!!

@yaohuiwu
Copy link

git config --global "url.ssh://git@ssh.github.com:443/.insteadOf" git@github.com

Not worked. It reports the following error after I set the config:

git pull
致命错误:远程错误:
is not a valid repository name
Visit https://support.github.com/ for help

@whu-lyh
Copy link

whu-lyh commented Feb 1, 2024

niubility!!!!

how you fixed it? it seems doesn't work for me!

@mahmudulshuvo
Copy link

Thank you ❤️

@mdranacse19
Copy link

suggest using url..insteadOf setting instead of overriding the connection for github.com in ~/.ssh/config (that's what the documentation describes), like so:

git config --global "url.ssh://git@ssh.github.com:443/.insteadOf" git@github.com:

it's work's for me. thank you

@fayesarah555
Copy link

thanks !

@RaghavaAkula394
Copy link

RaghavaAkula394 commented Mar 19, 2024

what would be the extension of config file ?

@xavierskip
Copy link

what would be the extension of config file ?

~/.ssh/config do not have file extension

@TechMadi
Copy link

TechMadi commented Apr 5, 2024

The first solution works if you your .ssh/config file got deleted

@ZhuohanX
Copy link

thank you!

@cghAshes
Copy link

thx!

@tcpdump-examples
Copy link

The purpose of this command is typically to test or use the SSH connection to GitHub, especially when the default port 22 is blocked or for some reason unavailable.

By using port 443, the connection can bypass firewalls that only allow HTTPS traffic, which is useful in restrictive network environments.

More details can be found here. https://www.howtouselinux.com/post/github-ssh-acces…ls-with-port-443

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment