MacOS High Sierra - невозможно взаимодействовать с Github через ssh

Я получил новый ноутбук MacOS с последней версией High Sierra.

Я сгенерировал ключ ssh, следуя официальному руководству Github. Затем я добавил это в свой брелок. После этого я обновил файл конфигурации ssh в ~/.ssh/config, чтобы он был следующим:

Host *
 AddKeysToAgent yes
 UseKeychain yes
 IdentityFile ~/.ssh/id_rsa
 ForwardAgent yes

Мне не предлагается пароль; время ожидания каждого соединения Git Pulling, тестирование ssh с помощью ssh -T git@github.com, push upstream и т. Д. Я попытался настроить домен github для использования разных портов, но это не помогло. Я также попытался указать другой порт в URL.

Вот моя обычная ошибка при попытке вытащить:

ssh: connect to host github.com port 22: Operation timed out
fatal: Could not read from remote repository.

Я получаю первую строку при попытке проверить мое соединение ssh, аналогично с портами 443 и 1234 (те, которые я тестировал). Я не могу отключить брандмауэр на этом компьютере.

Мне нужна помощь в устранении неполадок, поэтому, если у кого-нибудь есть какие-либо предложения, чтобы точно определить, почему я не могу здесь общаться, я бы с удовольствием их услышал!

1 ответ

Решение

Я получил пару электронных писем с вопросом, исправил ли я проблему, поэтому решил, что опубликую свое решение здесь.

Я подозреваю, что причиной, по которой я не смог подключиться через ssh-порт, был брандмауэр моей компании или домашний домен, который не был добавлен в белый список Github нашей организации.

Когда я впервые пытался решить проблему, я упоминал, что пытался изменить порт - глупо, я просто менял его на случайные номера портов, чтобы посмотреть, получу ли я что-нибудь.

Github поддерживает использование ssh через порт https.

Согласно этой документации, запуск этого позволит вам проверить соединение через https:

ssh -T -p 443 git@ssh.github.com

Если это успешно, вы можете обойти эту проблему подключения, изменив ~/.ssh/config заставить ssh через порт https (443) для Github:

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

Для других доменов, очевидно, вы бы указали этот домен и имя хоста.

Надеюсь, это поможет кому-то!

Другие вопросы по тегам