Github (SSH) via public WIFI, port 22 blocked

前端 未结 6 1186
忘了有多久
忘了有多久 2020-12-04 05:11

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.

<         


        
相关标签:
6条回答
  • 2020-12-04 05:17

    The same works for Bitbucket:

    Host bitbucket.org
      Hostname  altssh.bitbucket.org
      Port  443
    

    via (outdated / dead)

    via, updated (2015-10-29)

    0 讨论(0)
  • 2020-12-04 05:23

    I find two ways

    First

    • tor + torify

    After successfully Install and configure tor on system simply run this to check ssh use tor.

    torify ssh -Tv git@gitlab.com


    Second

    • tor + privoxy + corkscrew

    First configure tor from fist step. Then install privoxy to convert tor SOCKS5 to HTTP proxy.

    sudo apt install privoxy

    Then install corkscrew

    sudo apt install corkscrew

    Place this config file in: ~/.ssh/config

    host *
        ProxyCommand corkscrew 127.0.0.1 8118 %h %p
    

    Or with ncat

    Host gitlab.com
            User git
            ProxyCommand ncat --proxy 127.0.0.1:8118 %h %p
    

    Also can use nc instead of ncat

        ProxyCommand nc --proxy 127.0.0.1:8118 %h %p
    

    Now ssh can use configured proxy.

    [Edit]

    Simpler version

    Use torify before ssh command.

    torify ssh -Tv git@gitlab.com


    To works with Privoxy+Tor may need to change default configs. For me uncomment this line in /etc/privoxy/config

    forward-socks5t   /               127.0.0.1:9050 .
    

    ssh config

    Host *
        ProxyCommand nc --proxy 127.0.0.1:8118 %h %p
    
    0 讨论(0)
  • 2020-12-04 05:29

    No need to modify the ~/.ssh/config. You can add another remote repository via git remote add ...

    // github
    git remote add ssh://git@ssh.github.com:443/repo/name.git
    
    // gitlab
    git remote add ssh://git@altssh.gitlab.com:443/repo/name.git
    
    0 讨论(0)
  • 2020-12-04 05:33

    For gitlab, following can be added:

    Host gitlab.com
      Hostname altssh.gitlab.com
      User git
      Port 443
    

    Source: Alternate Gitlab SSH Port

    0 讨论(0)
  • 2020-12-04 05:43

    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

    0 讨论(0)
  • 2020-12-04 05:43

    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

    1. use a proper URL like ssh://user@host:port/path instead of the user@host:path shorthand; and

    2. 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
    
    0 讨论(0)
提交回复
热议问题