无法从 ssh Linux Mint 21 连接到 GitHub

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

OpenSSH_8.9 连接 GitHub 超时错误

我已经创建了我的 ssh 密钥。 下面我已将我的公钥发送到我的 GitHub 个人资料 -> SSH 密钥/身份验证密钥。

虽然我有到 GitHub 的连接(通过 ping),但当我尝试通过 ssh 连接时,它给了我一个超时错误

# Connect to github
usu@serv:~$ ssh -vT [email protected]

OpenSSH_8.9p1 Ubuntu-3ubuntu0.4, OpenSSL 3.0.2 15 Mar 2022
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: include /etc/ssh/ssh_config.d/*.conf matched no files
debug1: /etc/ssh/ssh_config line 21: Applying options for *
debug1: Connecting to github.com [140.82.121.3] port 22.
debug1: connect to address 140.82.121.3 port 22: Connection timed out
ssh: connect to host github.com port 22: Connection timed out

在我看来,GitHub 不接受使用 OpenSSH_8.9p1 版本生成的连接。

因此,我被迫安装了OpenSSH-7.6版本(Linux Mint 19版本) 这迫使我安装以前(已弃用)版本的 OpenSSL-1.0.2u

# prerequisites
$ sudo apt install libssl-dev
$ sudo apt install zlib1g-dev libz-dev

# download
https://www.openssl.org/source/old/1.0.2/openssl-1.0.2u.tar.gz
https://www.zlib.net/zlib-1.3.tar.gz
https://www.openssh.com/portable.html
  https://ftp.rnl.tecnico.ulisboa.pt/pub/OpenBSD/OpenSSH/portable/openssh-7.6p1.tar.gz

# install zlib-1.3
$ tar -xvf zlib-1.3.tar.gz
$ cd zlib-1.3
$ ./configure
$ sudo make
$ sudo make install

# install OpenSSL < 1.1.0
$ tar -xvf openssl-1.0.2u.tar.gz
$ cd openssl-1.0.2u
$ ./config
$ sudo make install

# install openssh-7.6
$ tar -xvf openssh-7.6p1.tar.gz
$ cd openssh-7.6p1
$ ./configure --without-zlib-version-check exec_prefix=/usr --without-openssl-header-check -with-ssl-dir=/usr/local/ssl
$ sudo make
$ sudo make install

github ssh openssh linux-mint-21
1个回答
0
投票

这看起来不像客户端版本不匹配 - 如果是这种情况,您将能够首先建立 TCP 连接,然后 然后 被丢弃。 (另外,我在这个系统上使用的是 OpenSSH_9.0p1,我可以通过 SSH 很好地连接到 GitHub。)

相反,这看起来像是有什么东西阻止了您与

github.com:22
的连接 - 可能是附近的防火墙,但也可能是 ISP 或更高级的实体。这是一种相当常见的做法,特别是对于公共场所的无线网络或许多企业网络。

既然您显然能够使用 HTTPS 访问 GitHub,那么您还应该能够使用 GitHub 的特殊主机名,其中 SSH 守护程序在端口 443 上侦听。尝试

ssh -Tvp443 [email protected]
- 如果它返回您的用户名以及一条消息关于 GitHub 如何不提供 shell 访问,那么您应该能够使用现有客户端(只是使用不同的主机:端口元组)将 SSH 与 GitHub 结合使用。 https://docs.github.com/en/authentication/troubleshooting-ssh/using-ssh-over-the-https-port 有一些可能有帮助的额外建议,包括如何使用
~/.ssh/config
抽象出特殊主机:端口元组。

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