ubuntu 20.04 WSL(Windows10)中的空闲 SSH 连接被重置

ubuntu 20.04 WSL(Windows10)中的空闲 SSH 连接被重置

我在 windows10 上使用 ubuntu wsl。我使用它通过 ssh 连接到我公司网络上的远程虚拟机。我可以成功地 ssh 到虚拟机。

如果我将其闲置一段时间,ssh 连接将自动断开并显示以下消息:

client_loop: send disconnect: Connection reset by peer

之前我使用 puTTY ssh 连接到远程计算机,即使我将会话闲置了几天,puTTY 会话也不会终止。我认为这是因为这个 puTTY 连接设置Seconds between keepalives (0 to turn off)被设置为0

如何在 ubuntu wsl 中实现相同功能。我尝试添加,ConnectTimeout 0/etc/ssh/ssh_config没有成功。

答案1

您应该在客户端查看这些参数/etc/ssh/ssh_config
ServerAliveInterval
ServerAliveCountMax

也许您可以尝试设置并从那里详细说明超时。
ServerAliveInterval 60

参考 Ubuntussh_配置

答案2

遇到过类似的问题,但设置略有不同:从 Windows 终端 (PowerShell) SSH 到 Ubuntu 服务器(VirtualBox 虚拟机)。如果我让连接运行一整夜,早上我会看到:

client_loop: send disconnect: Connection reset

by peer顺便说一下,那一行没有,只有上面有。我通过仅更改服务器配置来修复它。在 Ubuntu shell 中:

$ sudo vim /etc/ssh/sshd_config
# Added the following:
ClientAliveInterval 60
ClientAliveCountMax 5

当然,这些值可以进行调整,但现在即使计算机进入睡眠或待机状态,连接仍然保持。

答案3

即使防火墙已关闭,从 Windows 10 连接到 Ubuntu 计算机后不久,我也会收到“client_loop:send disconnect:Connection reset”信息。另外两台 Windows 10 计算机没有这个问题。我甚至按照建议设置了 ClientAliveInterval 60 ClientAliveCountMax 5。还按照另一个论坛的建议删除了 Windows 10 上的 .ssh 内容。/var/log 文件中没有错误消息。会话显示它仍然登录在 Ubuntu 计算机上。有问题的 Windows 10 计算机可以毫无问题地 ssh 到其他 Ubuntu 计算机。还有其他建议吗?

相关内容