Sometimes, firewalls refuse to allow SSH connections entirely. If using HTTPS cloning with credential caching is not an option, you can attempt to clone using an SSH connection made over the HTTPS port. Most firewall rules should allow this, but proxy servers may interfere.
To test if SSH over the HTTPS port is possible, run this SSH command:
ssh -T -p 443 email@example.com # Hi username! You've successfully authenticated, but GitHub does not # provide shell access.
If that worked, great! If not, you may need to follow our troubleshooting guide.
If you are able to SSH into
firstname.lastname@example.org over port 443, you can override your SSH settings to force any connection to github.com to run though that server and port.
To set this in your ssh config, edit the file at
~/.ssh/config, and add this section:
Host github.com Hostname ssh.github.com Port 443
You can test that this works by connecting once more to github.com:
ssh -T email@example.com # Hi username! You've successfully authenticated, but GitHub does not # provide shell access.