ssh:连接到主机 gitlab.com 端口 22:网络无法访问

问题描述 投票:0回答:10

我正在尝试访问 Gitlab 服务器以在 Ubuntu 20.10 计算机中克隆存储库,但我总是收到消息:

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

Please make sure you have the correct access rights
and the repository exists.

所以,我尝试运行命令

ssh -T [email protected]
,但我收到了消息:

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

我在另一台装有 Ubuntu 20.04 的计算机上尝试过,它成功了。

有人可以帮我吗?

git ssh gitlab ssh-keys public-key
10个回答
8
投票

我也有同样的问题。我通过 ssh 连接到远程计算机(VPN 已打开,因为它位于公司内)。从远程计算机上,我尝试 git clone (ssh) 并收到以下错误消息:

git clone [email protected]:<project-name>.git
Cloning into '<project-name>'...
ssh: connect to host gitlab.com port 22: Network is unreachable
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

以下解决方案有效。我将以下内容添加到远程计算机的 ssh-config 中,如下所述:https://about.gitlab.com/blog/2016/02/18/gitlab-dot-com-now-supports-an-替代 git-plus-ssh-port/.

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

我现在可以毫无问题地从 GitLab git 克隆 (ssh) 项目。


6
投票

我永远无法在工作环境中对任何公共 Git 存储库托管服务(github.com、gitlab.com 等)使用 SSH URL。

如果其他服务仍存在问题 (

ssh -Tv [email protected]
),则不允许您使用 SSH URL。使用 HTTPS URL。

但是,如果在同一网络上,另一台服务器确实可以工作,则请仔细检查特定计算机的防火墙规则。一个可能会阻止 SSH,而另一个则不会。
(

ufw status verbose
)


4
投票

如果您现在无法使用 ssh,您可以使用 HTTPS 代替:

git remote set-url origin <Clone HTTPS address>

3
投票

我很高兴通过 SSH(带有 WSL2 的 Ubuntu)推送和拉取我的(私人)gitlab 存储库,直到出现此错误。尝试用 google 搜索错误大约 5 分钟后,它又开始工作了!

如果您已成功推送/拉取/克隆并确信这不是防火墙问题,您可能只需要去给自己泡杯咖啡,然后再试一次,然后再在 stackoverflow 上浪费时间!


2
投票

造成这种情况有几个可能的原因:

1.) 您所在的网络会阻止端口 22 的流量。尝试从其他网络或设备进行连接将是快速测试此问题的最佳方法。

2.) Droplet 上的 ssh 服务未运行。

解决方案:

  1. 您可以在文件/etc/ssh/sshd_conf中更改您的ssh服务侦听的端口,或者您可以使用其他网络来测试此问题解决方案。
  2. 再次配置您的 SSH 密钥。

2
投票

我已经弄清楚了,我一直尝试连接的服务器需要代理,这解决了问题。但我希望有人能得到帮助。


2
投票

经过几天的搜索和设置,删除

.ssh
文件并再次设置,我发现问题出在网络上,某些网站被阻止访问,所以我在网络提供商的安全过滤器(如网络)中取消阻止它用于“地址隐藏”或“黑客攻击”。

然后

git clone
push
照常工作。


0
投票

我遇到了同样的问题,我无法通过 Windows PowerShell 终端通过 SSH 连接到 GitLab。 解决方案是通过 VScode 编辑器中的内置扩展使用 HTTPS 访问 GitLab。


0
投票

我遇到了同样的问题,这是由于使用了访客 wifi 网络。换成正常网络后就可以了。


0
投票

我将 ssh 地址更改为 https 解决了我的问题。

© www.soinside.com 2019 - 2024. All rights reserved.