当我尝试从我的 Ubuntu 22.04 服务器通过 SSH 连接到 GitHub(我只想从私有存储库中提取)时,我超时了。
我见过与我类似的问题,但没有一个可能的解决方案对我有用。
ping github.com 正常。
我尝试运行,但得到的结果如下:ssh -vT [email protected]
user@server:~/.ssh$ ssh -vvvT [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 matche d no files
debug1: /etc/ssh/ssh_config line 21: Applying options for *
debug3: expanded UserKnownHostsFile '~/.ssh/known_hosts' -> '/root/.ssh/known_ho sts'
debug3: expanded UserKnownHostsFile '~/.ssh/known_hosts2' -> '/root/.ssh/known_h osts2'
debug2: resolving "github.com" port 22
debug3: resolve_host: lookup github.com:22
debug3: ssh_connect_direct: entering
debug1: Connecting to github.com [140.82.121.4] port 22.
debug3: set_sock_tos: set socket 3 IP_TOS 0x10
(Stays here until timeout)
从我的 Windows 桌面(位于同一网络中)我获得Hi <my username>! You've successfully authenticated, but GitHub does not provide shell access.
我将 .ssh 文件夹中的公钥添加到了 github。我甚至尝试使用我的 Windows PC 使用的相同密钥,但没有任何效果。
我尝试按照类似讨论中所建议的方式连接到 443 端口,但它的行为方式相同。
我禁用了防火墙,但仍然出现同样的错误。
答案1
运行以下命令-o IPQoS=none
解决了我特定情况下的问题。我编辑ssh_config
并添加了行IPQoS none
,这样它将始终执行没有服务质量的 ssh。