Github (SSH) через загальнодоступний WIFI, порт 22 заблокований


171

Зараз я перебуваю на загальнодоступному місці WIFI і не можу використовувати SSH (вони, ймовірно, заблокували цей порт). Однак мені потрібне це з'єднання, щоб зробити git push.

➜ ssh -T git@github.com
ssh: connect to host github.com port 22: Connection refused

Чи можливо обійти це обмеження, встановивши тунель SSH через порт 80 і скажіть github pushвикористовувати це з'єднання? Як це зробити? Я на OSX (лев). Це має бути поширеною проблемою?

Відповіді:


370

Спробуйте це:

$ vim ~/.ssh/config

Додайте

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

Джерело: https://help.github.com/articles/using-ssh-over-the-https-port


6
@prtitrz будь-яка ідея, що таке конфігурація для heroku?
Алекстул

32
просто fyi, вам не доведеться відкривати файл з vim.
Джоель Брюер

1
Це чудово! Але мені теж потрібно це зробити для героїки. Будь-які ідеї?
J-bob

Зверніться до serverfault.com/a/253314, якщо ви отримуєтеBad owner or permissions on /home/.../.ssh/config
Суніл Кумар


22

Крім налаштування його з ~/.ssh/configфайлом, ви також можете просто включити номер порту у віддалену URL-адресу, яку ви використовуєте. Ви просто повинні

  1. використовувати правильну URL-адресу, як-от ssh://user@host:port/pathзамість user@host:pathскорочення; і

  2. додати ssh.піддомен до github.com.

Наприклад, замість

git@github.com:cdbennett/python-gitlab.git

використання

ssh://git@ssh.github.com:443/cdbennett/python-gitlab.git


1

Не потрібно змінювати ~/.ssh/config. Ви можете додати ще одне віддалене сховище через 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

Я знаходжу два шляхи

Перший

  • tor + torify

Після успішної установки та налаштування tor в системі просто запустіть це, щоб перевірити використання ssh tor.

torify ssh -Tv git@gitlab.com


Друге

  • tor + privoxy + штопор

Спочатку налаштуйте tor від кулакового кроку. Потім встановіть privoxy для перетворення Tor SOCKS5 в HTTP проксі.

sudo apt install privoxy

Потім встановіть штопор

sudo apt install corkscrew

Помістіть цей конфігураційний файл у: ~ / .ssh / config

host *
    ProxyCommand corkscrew 127.0.0.1 8118 %h %p

Або з ncat

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

Також можна використовувати nc замість ncat

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

Тепер ssh може використовувати налаштований проксі.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.