I'm currently on a public WIFI spot and I'm unable to use SSH (they probably blocked that port). However, I need that connection to do a git push
.
➜ ssh -T git@github.com
ssh: connect to host github.com port 22: Connection refused
Is it possible to bypass this restriction by setting up a SSH tunnel via port 80 and tell github push
to use that connection? How to do that? I'm on OSX (lion). This must be a common problem?
Try this:
$ vim ~/.ssh/config
Add
Host github.com
Hostname ssh.github.com
Port 443
Source: https://help.github.com/articles/using-ssh-over-the-https-port
The same works for Bitbucket:
Host bitbucket.org
Hostname altssh.bitbucket.org
Port 443
via (outdated / dead)
via, updated (2015-10-29)
In addition to configuring it with the ~/.ssh/config
file, you can also simply include the port number in the remote URL you use. You just have to
use a proper URL like ssh://user@host:port/path
instead of the user@host:path
shorthand; and
prepend the ssh.
subdomain to github.com
.
For instance, instead of
git@github.com:cdbennett/python-gitlab.git
use
ssh://git@ssh.github.com:443/cdbennett/python-gitlab.git
For gitlab, following can be added:
Host gitlab.com
Hostname altssh.gitlab.com
User git
Port 443
Source: Alternate Gitlab SSH Port