【问题标题】:SSH hangs after key is accepted on WSL Terminal在 WSL 终端上接受密钥后 SSH 挂起
【发布时间】:2021-12-09 19:12:18
【问题描述】:

从 Git Repo(Bitbucket 和我的网络主机)推送和获取停止在 WSL 上工作。我发现通过 ssh 进行连接就在 shell 提示出现之前挂起。使用ssh -vvv 显示了这一点(我删除了我认为不重要的东西):

debug1: Authentication succeeded (publickey).
Authenticated to XXX.XXXX ([XXX.XXX.XXX.XXX]:XX).
debug1: channel 0: new [client-session]
debug3: ssh_session2_open: channel_new: 0
debug2: channel 0: open confirm rwindow 0 rmax 32768

在挂起之前显示上述内容的数量会有所不同。这是有效的,但停止了。我已经更改了 ISP 和路由器(我已经从 ADSL 转到 NBN),我认为这是原因,但我可以使用 PowerShell(使用 OpenSSH )连接到同一台服务器。我尝试创建新密钥,但得到相同的结果。我只是需要一些有关如何解决此问题的帮助。

我在 WSL 2 上运行 Ubuntu 18.04.3 LTS(Windows Build 18999,我已经进入快速通道尝试修复,也没有在慢通道上工作)。我在 WSL 上运行 OpenSSH_7.6p1 Ubuntu-4ubuntu0.3、OpenSSL 1.0.2n;以及 PowerShell 上的 OpenSSH_for_Windows_7.7p1、LibreSSL 2.6.5。

【问题讨论】:

  • 你在这里运行什么实际的 ssh 命令?请包含您的 .ssh/config 文件中的任何相关条目。
  • 我只是想建立一个连接,所以:ssh user@hostname.com -p22,使用-vvv 标记来获取输出。
  • 我正在尝试使用 git fetch 等,但这显然阻止了我使用 git

标签: git ssh windows-subsystem-for-linux openssh


【解决方案1】:

SSH 在 WSL 2 上挂起(并完全挂起终端)是一个众所周知的问题。
已在 WSL GitHub 上多次报告(其中一些问题已关闭,但并未真正解决问题)。
当前开放票的示例如下:https://github.com/microsoft/WSL/issues/4690

有些人报告说降低 Ubuntu 上的 MTU 为他们解决了这个问题,但很多人(包括我)没有看到任何区别。

您可以在 Windows 上检查您的连接的 MTU:

netsh interface ipv4 show subinterfaces

然后将 Ubuntu 上的 MTU 设置为 较低 值(请参阅此票证:https://github.com/microsoft/WSL/issues/7197):

sudo ip link set dev eth0 mtu 1300

但它实际上并没有为我工作......
编辑:在我重新安装 WSL 后,这个解决方法开始部分地为我工作。我仍然偶尔会挂起,但现在不那么频繁了。

【讨论】:

    【解决方案2】:

    不是真正的答案,但我的 .bash_profile 或 .bashrc 有问题。我最终只是重置了我的 Ubuntu 安装,并且能够重新设置。

    【讨论】:

      猜你喜欢
      • 2013-08-20
      • 1970-01-01
      • 2016-12-02
      • 1970-01-01
      • 2017-04-12
      • 1970-01-01
      • 2014-04-03
      • 2012-05-30
      • 2022-06-11
      相关资源
      最近更新 更多