自从我得到我的新 PC 后的最后几周,SSH 一直运行良好。我没有遇到任何问题,但今天我开始:
ssh:连接到主机 github.com 端口 22:资源暂时不可用
我进行了一些谷歌搜索,发现 WSL 存在一个常见问题,有时会导致此问题,但我无法从我的 bash shell 或 cmd/powershell 进行 SSH。
这是让我感到困惑的部分,如果我这样做:ssh -T git@192.30.253.113
我被提示输入我的 key 的密码,它成功验证并响应“嗨 alexmk92!您已成功通过身份验证。”
很好,这至少证明我的防火墙没有在端口 22 上阻止 SSH。但是为什么 git@github.com
会抛出资源失败错误?我最初的想法是这可能是 DNS 问题。
所以我尝试配置我的网络适配器以使用 Google 的 DNS 服务器(8.8.8.8
和 8.8.4.4
)我什至配置了 IPV6 DNS 服务器以防万一。在此之后,我做了一个 ipconfig/flushdns
,尝试再次通过 git@github.com
连接并 BAM 相同的结果,但是 git@192.30.253.113
仍然有效。
我猜另一个潜在的原因是 github.com
在负载均衡器后面,集群上的一个 IP 可能在我机器的某个地方被列入黑名单?我现在只是凭空猜测,非常感谢任何帮助,这让我发疯。
最佳答案
进一步谷歌搜索后发现我的机器没有 github.com 的主机条目并且无法自动解析它。
在适用于 Linux 的 Windows 子系统中,我创建了一个 ssh 配置文件
touch ~/.ssh/config
(出于某种原因,Windows 市场上的 Ubuntu 18.04 基本发行版没有)然后我必须确保文件权限正确:
chmod 755 ~/.ssh/config
创建文件后,我用
对其进行了编辑sudo nano ~/.ssh/config
并添加 github.com
作为主机。
Host github.com
Hostname ssh.github.com
Port 22
保存后,我跑了
sudo /etc/init.d/ssh restart
并尝试过
ssh -T git@github.com
现在似乎一切正常。
关于SSH 到 Github 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51790681/