ssh:连接到主机github.com端口22:连接超时

时间:2013-03-23 17:13:27

标签: git ssh

我是代理人,我正在推动git成功了很长一段时间 现在我无法突然进入git 我已经设置了RSA密钥和代理并对它们进行了双重检查,没有用,git正在向我发送页面标题中显示的错误。

19 个答案:

答案 0 :(得分:195)

原因可能是您在网络下进行防火墙修改。(在这种情况下,他们可能故意阻止某些端口)
要仔细检查这是否是原因......做

ssh -T git@github.com

这应该超时。 如果是这种情况使用http协议而不是ssh这种方式
只需将配置文件中的URL更改为http 方法如下: -

git config --local -e

更改

的条目
 url = git@github.com:username/repo.git

url = https://github.com/username/repo.git

答案 1 :(得分:53)

就我而言,建议的解决方案均无效,因此我尝试自行修复并解决。

对我来说,我在我的AWS EC2 UBUNTU实例上遇到此错误,我解决该问题的方法是编辑git config(如果不存在,则添加它)。

sudo nano ~/.ssh/config

我添加了以下内容

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

然后,运行命令ssh -T git@github.com确认问题是否已解决。

根据this

  

有时,防火墙拒绝完全允许SSH连接。如果不能将HTTPS克隆与凭据缓存一起使用,则可以尝试使用通过HTTPS端口建立的SSH连接进行克隆。大多数防火墙规则都应该允许这样做,但是代理服务器可能会干扰

希望这对其他遇到与我一样的问题的人有所帮助。

答案 2 :(得分:37)

基本网址重写

Git提供了一种使用git config重写URL的方法。只需发出以下命令:

git config --global url."https://".insteadOf git://

现在,好像通过魔术一样,所有git命令都会执行git://替换为https://

源: git:// protocol blocked by company, how can I get around that?

答案 3 :(得分:4)

.ssh文件夹内 创建“配置”文件

Host github.com
User git
Hostname ssh.github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
Port 443

Host gitlab.com
Hostname altssh.gitlab.com
User git
Port 443
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa

答案 4 :(得分:2)

执行:

nc -v -z <git-repository> <port>

您的输出应如下所示:

"Connection to <git-repository> <port> port [tcp/*] succeeded!"

如果你得到:

connect to <git-repository> <port> (tcp) failed: Connection timed out

您需要编辑〜/ .ssh / config文件。添加如下内容:

Host example.com
Port 1234

答案 5 :(得分:1)

我遇到了同样的问题,但我发现答案有所不同,以为有人可能会遇到这个问题,所以这是我的解决方案。

我必须为端口22804439418将2个IP列入白名单:

  • 192.30.252.0/22

  • 185.199.108.0/22

如果这些IP不起作用,可能是因为它们已更新,您可以在this page上找到最新的IP。

答案 6 :(得分:1)

快速解决方法:尝试切换到其他网络

在热点(3 / 4G连接)上,我遇到了此问题。切换到不同的连接(WiFi)可以解决问题,但这只是一种解决方法-我没有机会深入了解问题,因此其他答案对于确定潜在问题可能更有趣

答案 7 :(得分:1)

我遇到了2个小时的问题,结果从https中删除了“ s”,然后这样做:

application.yml

解决了。

答案 8 :(得分:1)

将回购URL从ssh更改为https对我来说意义不大。与ssh相比,我更喜欢https,因为我不想放弃某些额外的好处。以上答案非常准确。如果您在GitLab中遇到此问题,请转到其官方文档page并像这样更改您的配置文件。

Host gitlab.com
  Hostname altssh.gitlab.com
  User git
  Port 443
  PreferredAuthentications publickey
  IdentityFile ~/.ssh/gitlab

答案 9 :(得分:0)

刷新我的互联网连接和终端的 git reload 功能对我有用。

答案 10 :(得分:0)

在与 Ludder 类似的故障模式中,我在尚未登录到正确的公司 VPN 时收到此错误。 :脸掌:

答案 11 :(得分:0)

对我来说,问题出在ISP端。 Internet服务提供商未启用端口号。因此要求他们在我的网络上启用端口号,然后它开始工作。
仅用于测试:连接到移动热点并输入ssh -T git@bitbucket.org or git pull.
如果可行,请要求您的ISP启用该端口。

答案 12 :(得分:0)

我在使用常规IP和故障转移IP设置的我的服务器上遇到此问题。故障转移IP目前未指向服务器。我必须从/etc/netplan/01-netcfg.yaml中的服务器配置中删除故障转移IP。将故障转移IP指向该服务器可能也可以解决该问题。

答案 13 :(得分:0)

主要原因是公司最近安装的代理服务器发生了更改,该代理服务器阻止了除与公司域的连接之外的其他ssh连接。

我可以按照以下步骤成功连接:

  1. 仔细检查了这个问题是我所假设的 ssh -T git@github.com

它应该在超时后结束。

  1. 通过以下方式编辑了本地远程URL

ssh config --local -e

和来自

url=git@github.com:asheeshjanghu/Journal.git

url=https://github.com/asheeshjanghu/Journal.git

重要的一点是,您必须在url中的2个位置进行更改。

git@https://,从github:usernamegithub/username

最后通过执行git fetch

进行验证

答案 14 :(得分:0)

重启计算机为我解决了它。
Git版本:2.27.0.windows.1
操作系统版本:Windows 10 v1909

答案 15 :(得分:0)

问题: 产生问题的步骤:git clone git@github.com:sramachand71 / test.git 新笔记本电脑中的第一次 错误 ssh:连接到主机github.com端口22:连接超时 致命:无法从远程存储库读取。

请确保您具有正确的访问权限 并且存储库存在。 解决方案 对于系统中的第一次克隆,我们需要为clone命令提供双引号。 $ git clone“ git@github.com:sramachand71 / test.git” 即使一切都正确,但我仍然在系统中遇到此问题,但最后发现,第一次或系统中的新用户必须对URL“ repository_url.git”进行双引号。

答案 16 :(得分:0)

我遇到了同样的问题,找不到可行的解决方案。我在设置本地服务器时遇到了这个问题,git无法通过我的代理网络连接,但是我的工作站可以。这是我运行命令时的输出  ssh -vT git@github.com

ubuntu@server:~$ ssh -vT git@github.com
OpenSSH_7.2p2 Ubuntu-4ubuntu2.8, OpenSSL 1.0.2g  1 Mar 2016
debug1: Reading configuration data /home/ubuntu/.ssh/config
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to github.com [13.234.176.102] port 22.

因此,我尝试使用通过HTTPS端口建立的SSH连接,方法是编辑配置文件~/.ssh/config,但无济于事。

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

最后,我找到了这个article,它可以解决并暴露出真正的问题。

# github.com
Host github.com
    Hostname ssh.github.com
    ProxyCommand nc -X connect -x <PROXY-HOST>:<PORT> %h %p
    Port 443
    ServerAliveInterval 20
    User git

这是我的配置文件,现在git通过ssh可以很好地工作!

答案 17 :(得分:0)

当我不小心切换到来宾 wifi网络时,出现此错误。必须切换回我的默认无线网络。

答案 18 :(得分:0)

以上答案为我提供了解决此问题所需的信息。在我的情况下,网址以ssh:///

开头

要检查git config中的网址是否正确,请打开git config文件:-

git config --local -e

检查url条目。开头不应该带有ssh:///。

错误输入:

 url = ssh:///git@github.com:username/repo.git

正确输入:

 url = git@github.com:username/repo.git

如果您的网址正确,那么下一步就是尝试上述建议将协议更改为http的答案。