【问题标题】:Cannot connect to GitHub via SSH (But can connect to GitLab)无法通过 SSH 连接到 GitHub(但可以连接到 GitLab)
【发布时间】:2022-02-21 20:02:21
【问题描述】:

我搜索了互联网,发现很多人有类似的问题,但我的变种似乎是独一无二的。问题是我无法通过 ssh 连接到 GitHub 以进行推送/拉取(我在 Windows 10 上)。

如果我运行ssh -T git@github.com:

ssh: connect to host github.com port 22: Network is unreachable

如果我运行ssh -T -p 443 git@github.com:

Hi cjriches! You've successfully authenticated, but GitHub does not provide shell access.

奇怪的是,如果我运行 ssh -T git@gitlab.com:

Welcome to GitLab, @cjriches!

这与我尝试禁用 Windows 防火墙无济于事的事实相结合,似乎证明问题不仅仅是端口 22。值得一提的是,我还可以通过 SSH 连接到其他完全与 git 无关的主机。出于某种原因,拒绝连接的是 GitHub。我已经重新上传了公钥以防万一,所以问题肯定不存在。

有人知道这到底是怎么发生的吗?

【问题讨论】:

  • 尝试使用 ssh 和 -vvv,检查域是否解析为正确的 ip。日志中是否还有其他问题/警告?

标签: git github ssh


【解决方案1】:

似乎是 DNS 问题或代理问题。我会尝试将我的 dns 更改为 8.8.8.8 和 8.8.4.4。看看这是否能解决问题。如果这仍然不能解决问题,我会查看我是否使用了阻止我联系 github 的代理。

【讨论】:

  • 更改 DNS 服务器解决了这个问题。详细的 SSH 输出显示,使用我的默认(Virgin Media)DNS,github.com 解析为 81.99.162.48,这是 VM 代理服务器的地址。按照建议使用 Google 的 DNS 将其解析为 140.82.118.3,该地址归 GitHub 拥有并且工作正常。从this 链接来看,Virgin Media Websafe 似乎出于某种原因不能很好地与 GitHub 配合使用;也可以通过将 github.com 添加到其白名单来解决此问题,但我无法这样做。
【解决方案2】:

我有同样的问题。通过在原始宽带帐户页面的“管理我的网络安全设置”部分中禁用病毒安全和儿童安全来解决它。

来源:https://community.virginmedia.com/t5/Forum-Archive/GitHub-inaccesible-over-SSH/td-p/3816287

【讨论】:

  • 正如我在对已接受答案的评论中提到的,这确实是问题的根本原因。您可以按照您的说法禁用这些设置,也可以按照其他答案的建议更改 DNS 服务器以绕过它们。
  • 我已禁用但仍有问题,设置是否需要时间才能生效。问题是,我已经使用 Virgin 多年了,但这个问题从昨天开始对我来说就开始了。
【解决方案3】:

检查git config --show-origin -l 以查看是否有任何设置(代理或其他)可能专门适用于 github.com。

并检查您的环境变量(Windows 中的 CMD 中的“set”),并仔细检查这些变量中是否有任何可能涉及 GitHub。

【讨论】:

    【解决方案4】:

    感谢 OP 和其他答案。我的解决方案是编辑我的~/.ssh/config file(在 linux 上)。

    Host github.com
    HostName 140.82.121.4
    User git
    AddKeysToAgent yes
    # Linux does not recognise UseKeychain but Mac does
    IgnoreUnknown UseKeychain 
    UseKeychain yes
    IdentityFile ~/.ssh/your_ssh_key_file
    

    【讨论】:

      猜你喜欢
      • 2020-05-12
      • 2021-08-28
      • 2015-10-21
      • 2012-09-04
      • 1970-01-01
      • 2017-03-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多