ssh的使用

本文介绍如何配置SSH连接以避免因网络延迟或不稳定导致的连接中断问题。通过设置ServerAliveInterval和ClientAliveInterval参数,SSH服务器将定期发送心跳信号以维持连接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用ssh连接远程服务器的时候,在网络质量不太好的情况下,如果长时间没有键盘输入,ssh连接有可能中断。正在执行的程序和vim等缓冲区数据都会丢失。

在windows下使用SecureCRT可以设置session的noop属性来保持连接。

在linux下要保持连接,可以使用-o的一个参数ServerAliveInterval来设置一个防止超时的时间。

代码看起来象这样

ssh -o ServerAliveInterval=60 x.x.x.x

如果要让所有的ssh连接自动加上此属性,可以修改 ~/.ssh/config 文件添加

Host *

Protocol 2

ServerAliveInterval 30

当然,只这只能解决网络延时大和不稳定的情况,如果网络出现故障,数据还是容易丢失。因此,远程操作最好还是在screen中执行为好。

 

 

 

最近工作时经常要同时维护 3 台 Ubuntu 的主机,但当 SSH Client 窗口在几分钟没有键盘操作的时候,会话就会超时断线,特别对于 SFTP 管理时会更加烦躁 :(

找了一些关于 SSH Server 的资料,发现通过修改 sshd 的配置文件,能够让 SSH Server 发送“心跳”信号来维持持续连接,下面是设置的内容

打开服务器 /etc/ssh/sshd_config,我在最后增加一行

ClientAliveInterval 60

ClientAliveCountMax 1

这 样,SSH Server 每 60 秒就会自动发送一个信号给 Client,而等待 Client 回应,(注意:是服务器发心跳信号,不是客户端,这个有别于一些 FTP Client 发送的 KeepAlives 信号哦~~~),如果客户端没有回应,会记录下来直到记录数超过 ClientAliveCountMax 的值时,才会断开连接。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值