SSH频繁掉线如何解决?

SSH持久连接非常有用,因为它可以节省在建立和断开连接时所需的时间,特别是当你需要频繁登录到某个服务器时。这里提供很三种方法去设置SSH持久连接。

SSH持久连接

一、客服端(本地)配置

config配置文件

  1. 打开本地计算机的 SSH 配置文件。如果你使用 Unix 或 Linux 基础设施,可以使用文本编辑器打开 ~/.ssh/config` 文件。Windows 用户可以在用户目录的 `.ssh 文件夹中查找到同样的文件。

    vim ~/.ssh/config

    如果文件不存在,你需要创建一个。

  2. 在打开的配置文件中,添加以下代码:

    Host *
      ServerAliveInterval 60
      ServerAliveCountMax 5

    这里的 Host *` 表示这个配置适用于所有的 SSH 连接。`ServerAliveInterval 60` 代表客户端会每隔60秒向服务器发送一个请求,询问服务器端是否还在。 `ServerAliveCountMax 5 则表示在丢失响应后,客户端会尝试最多5次发送请求,然后断开连接。

  3. 保存并关闭文件。

这样就完成了SSH持久连接的设置。

理解配置值的含义

  • ServerAliveInterval:定义了向服务器端发送请求的间隔,单位是秒。如果设置为60,那么每分钟就会发送一次请求给服务器。
  • ServerAliveCountMax:定义了在没有得到服务器响应后,服务器会再尝试发送请求的次数。

二、服务端配置

修改服务器的SSH配置

可以通过修改服务器上的sshd_config文件来增加会话超时时间。设置ClientAliveIntervalClientAliveCountMax参数,例如:

   ClientAliveInterval 60
   ClientAliveCountMax 120

这表示服务器每60秒向客户端发送一次消息,如果客户端在120次无响应后仍未回复,则服务器将断开连接。修改后需要重启sshd服务。

三、三方工具

使用终端复用器:如tmuxscreen,这些工具允许会话在网络断开后继续运行,并且可以在重新连接后恢复会话。

保持一个持久的SSH连接可以省下不少时间,在运维、开发调试的场景下很有用处。

IPKings一款优秀的HTTP/Socks5代理服务-最低1.49$每月
2024 Google I/O大会放出AI大招 - 招招要友商的"命"
标签:

发表我的评论

电子邮件地址不会被公开。 必填项已用*标注

43 + 55 =

ajax-loader