SSH至Github无效

时间:2018-08-10 16:33:47

标签: ssh

自从我有了新PC以来,SSH在过去几周一直运行良好。我没问题,但是今天我开始明白了:

ssh: connect to host github.com port 22: resource temporarily unavailable

我进行了一次谷歌搜索,发现WSL有一个常见的问题有时会导致这种情况,但是我无法从bash shell或cmd / powershell进行SSH。

这是让我感到困惑的部分,如果我这样做:ssh -T git@192.30.253.113提示输入密码作为密码,它成功进行身份验证并显示“ Hi alexmk92!您已成功身份验证”。

太好了,至少可以证明我的防火墙没有在端口22上阻止SSH。但是为什么git@github.com抛出资源失败错误?我最初的想法是这可能是DNS问题。

因此,我尝试将网络适配器配置为使用Google的DNS服务器(8.8.8.88.8.4.4),甚至为防万一,我还配置了IPV6 DNS服务器。之后,我做了一个ipconfig /flushdns,尝试再次通过git@github.com进行连接并获得相同的结果,但是git@192.30.253.113仍然有效。

我猜测另一个可能的原因是github.com位于负载均衡器后面,并且群集中的IP之一可能在我的计算机上的黑名单中了吗?我现在只是凭空猜测,任何帮助将不胜感激,这让我发疯。

3 个答案:

答案 0 :(得分:1)

进一步搜索之后,发现我的机器没有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。现在一切似乎都正常了。

答案 1 :(得分:0)

要成功地与Github建立SSH连接,必须将SSH密钥导入到Github中

  • 打开Git bash或Terminal
  • 运行命令ssh-keygen
  • 选择所有默认选项

在文件夹 * /。ssh / *

中生成了私钥和公钥。
  • 登录到Github.com
  • 导航到帐户设置
  • 从侧面导航栏中选择“ SSH和GPG密钥”项
  • 点击添加的新SSh键
  • * /。ssh / id_rsa.pub *
  • 复制并保存公钥内容

答案 2 :(得分:0)

在我的情况下,我的ISP不允许ssh,因此不能同时在cmd和wsl上运行。使用vpn绕过它