Github (SSH) via WIFI público, porta 22 bloqueada

171

Atualmente, estou em um local público WIFI e não consigo usar o SSH (eles provavelmente bloquearam essa porta). No entanto, preciso dessa conexão para fazer a git push.

➜ ssh -T [email protected]
ssh: connect to host github.com port 22: Connection refused

É possível contornar essa restrição configurando um túnel SSH via porta 80 e solicitando o github pushuso dessa conexão? Como fazer isso? Estou no OSX (leão). Este deve ser um problema comum?

ostroon
fonte
Alguém sabe como fazer isso no Launchpad.net?
Akiva

Respostas:

370

Tente o seguinte:

$ vim ~/.ssh/config

Adicionar

Host github.com
  Hostname ssh.github.com
  Port 443

Fonte: https://help.github.com/articles/using-ssh-over-the-https-port

prtitrz
fonte
6
@prtitrz alguma idéia de qual é a configuração para o heroku?
Alextoul 11/09/12
32
apenas fyi, você não precisa abrir o arquivo com o vim.
Joel Brewer
1
Isso é ótimo! Mas eu também preciso fazer isso por heroku. Alguma ideia?
J-bob
Consulte serverfault.com/a/253314 se você está recebendoBad owner or permissions on /home/.../.ssh/config
Sunil Kumar
Alguém sabe como fazer isso no launchpad.net?
Akiva
44

O mesmo funciona para o Bitbucket:

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

via (desatualizado / morto)

via, atualizado (29-10-2015)

the_karel
fonte
22

Além de configurá-lo com o ~/.ssh/configarquivo, você também pode simplesmente incluir o número da porta no URL remoto usado. Você só tem de

  1. use uma URL adequada como em ssh://user@host:port/pathvez da user@host:pathabreviação; e

  2. preceda o ssh.subdomínio em github.com.

Por exemplo, em vez de

[email protected]:cdbennett/python-gitlab.git

usar

ssh://[email protected]:443/cdbennett/python-gitlab.git
Colin D Bennett
fonte
6

Para o gitlab, é possível adicionar o seguinte:

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

Fonte: porta SSH alternativa do Gitlab

Jikku Jose
fonte
1

Não há necessidade de modificar o ~/.ssh/config. Você pode adicionar outro repositório remoto via git remote add ...

// github
git remote add ssh://[email protected]:443/repo/name.git

// gitlab
git remote add ssh://[email protected]:443/repo/name.git
Krishan König
fonte
0

Eu encontro duas maneiras

Primeiro

  • tor + torify

Após instalar e configurar com sucesso o tor no sistema, basta executar isso para verificar o uso do ssh tor.

torify ssh -Tv [email protected]


Segundo

  • tor + privoxy + saca-rolhas

Primeiro configure tor a partir do primeiro passo. Em seguida, instale o privoxy para converter o SOCKS5 em proxy HTTP.

sudo apt install privoxy

Em seguida, instale o saca-rolhas

sudo apt install corkscrew

Coloque este arquivo de configuração em: ~ / .ssh / config

host *
    ProxyCommand corkscrew 127.0.0.1 8118 %h %p

Ou com ncat

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

Também pode usar nc em vez de ncat

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

Agora o ssh pode usar o proxy configurado.

EsmaeelE
fonte