如何在不主动使用 SSH 连接的情况下保持它的活动状态。当我使用它时,它工作正常,但是当我几分钟不使用它时,它会断开连接。每次连接时都会收到一封电子邮件,我如何才能保持 SSH 会话的活动状态?
注意:在我的.ssh/config文件中,在顶部我有
Host *
ServerAliveInterval 3
Run Code Online (Sandbox Code Playgroud)
但它似乎不起作用。
Pes*_*rge 17
您需要指定向服务器发送数据包的尝试次数和间隔。您可以将以下几行放入您的.ssh/config文件中:
Host examplehost
Hostname examplehost.com
ServerAliveInterval 180
ServerAliveCountMax 2
Run Code Online (Sandbox Code Playgroud)
这将每 180 秒(3 分钟)向服务器发送一个数据包,它会尝试两次,然后在没有收到客户端响应后关闭连接。
您还可以在 ssh 命令中添加这些参数,就像这样...
ssh -o ServerAliveInterval=180 -o ServerAliveCountMax=2 $HOST
Run Code Online (Sandbox Code Playgroud)
在 Linux 和 Apple Mac OS X 操作系统上,该~/.ssh/config文件使您可以指定许多 SSH 设置,包括那些保持 SSH 连接活动的设置。为此,请按照下列步骤操作:
使用首选文本编辑器~/.ssh/config在本地计算机上打开文件。注意:如果.ssh目录或配置文件不存在,请创建它们。
将以下行添加到配置文件中。该主机值可以是任何你想要的名称; 它只是其他设置的标签。该主机名值是您要访问的远程主机; 将example.com替换为您的域名。用您自己的主机帐户用户名替换用户名:
Host example
Hostname example.com
Port 7822
User username
ServerAliveInterval 240
ServerAliveCountMax 2
Run Code Online (Sandbox Code Playgroud)
使用此配置,SSH 客户端每 240 秒(4 分钟)向服务器发送一个数据包以保持连接有效。如果客户端在两次尝试后没有收到响应(由 ServerAliveCountMax 设置指定),它会关闭连接。
有关所有可用 SSH 配置设置的详细信息,请man ssh_config在命令行中键入。
将更改保存到配置文件。
使用 SSH 连接到您的帐户。为此,只需键入 ssh example,其中 example 表示您在步骤 2 中指定的 Host 值。
监控连接。如果仍然下降,请逐渐减少ServerAliveInterval配置文件中的设置,直到连接稳定。
检查以下网址了解更多详情https://www.a2hosting.com/kb/getting-started-guide/accessing-your-account/keeping-ssh-connections-alive
| 归档时间: |
|
| 查看次数: |
31381 次 |
| 最近记录: |