【问题标题】:MacOS High Sierra - unable to interact with Github via sshMacOS High Sierra - 无法通过 ssh 与 Github 交互
【发布时间】:2018-05-18 05:13:36
【问题描述】:

我买了一台装有最新 High Sierra 版本的新 MacOS 笔记本电脑。

我已经按照 Github 的官方指南生成了一个 ssh 密钥。然后我将它添加到我的钥匙串中。之后,我将 ~/.ssh/config 中的 ssh 配置文件更新为如下:

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

没有提示我输入密码;每个连接都超时。 Git 拉取、使用 ssh -T git@github.com 测试 ssh、向上游推送等。我尝试将 github 的域设置为使用不同的端口,但这似乎不起作用。我还尝试在 url 中指定不同的端口。

这是我尝试拉取时的常见错误:

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

在尝试测试我的 ssh 连接时,我得到了第一行,与端口 443 和 1234(我测试过的端口)类似。我无法在这台机器上禁用我的防火墙。

我需要故障排除方面的帮助,所以如果有人有任何建议来确定我无法在这里互动的确切原因,我很想听听他们的意见!

【问题讨论】:

  • 这听起来像是防火墙问题。
  • 对,@OliverCharlesworth,但我无法禁用这台机器(公司硬件)上的防火墙。我可以设置解决方法或白名单吗?
  • 如果不了解防火墙的更多信息,那是不可能的。我建议与您的 IT 部门交谈:/
  • 对于它的价值,我在 vpn 之外远程工作,所以这绝对是本地/MacBook 问题

标签: git github ssh macos-high-sierra


【解决方案1】:

我收到了几封电子邮件,询问我是否解决了这个问题,所以我想我会在这里发布我的解决方案。

我怀疑我无法通过 ssh 端口连接的原因是我公司的防火墙或我的家庭域没有被添加到我们组织的 Github 的白名单中。

当我第一次尝试解决问题时,我提到我正在尝试更改端口 - 愚蠢的是,我只是将其更改为随机端口号以查看是否有任何结果。

Github 支持using ssh over the https port

根据该文档,运行它可以让您通过 https 测试连接:

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

如果成功,您可以通过更改您的 ~/.ssh/config 以强制 ssh 通过 Github 的 https 端口 (443) 来解决此连接问题:

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

对于其他域,显然,您将指定特定于域的主机和主机名。

希望这对某人有所帮助!

【讨论】:

    猜你喜欢
    • 2018-07-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-27
    • 2019-02-03
    • 1970-01-01
    • 2018-08-16
    相关资源
    最近更新 更多