linux 设置SSH Server保持长时间连接

本文介绍如何配置SSH服务,包括自动断开空闲连接、保持长期活跃连接的方法,并提供了Ubuntu系统的具体配置步骤。

怎样让服务器和一定时间没有任何操作的终端自动断开连接? # vi /etc/profile 增加: TMOUT=1800 这样30分钟没操作就自动LOGOUT

 

OpenSSH基于安全的理由,如果用户连线到SSH Server后闲置一段时间,SSH Server会在超过特定时间后自动终止SSH连线。本人习惯长时间连接,需要做如下修改:

1、打开ssh配置文件:# vim /etc/ssh/sshd_config
加入如下两个参数保存就可以:

TCPKeepAlive yes
ClientAliveCountMax 360

注:前一个参数表示要保持TCP连接,后一个参数表示客户端的SSH连线闲置多长时间后自动终止连线的数值,单位为分钟。

2、重启sshd生效:

/etc/init.d/sshd restart

注:此法适用于所有Linux发行版的OpenSSH

 

ubuntu设置

如何让ssh连接服务器或者sshtunnel保持连接呢?

  其实也很方便,只要在/etc/ssh/ssh_config文件里加两个参数就行了

  1TCPKeepAliveyes

  2ServerAliveInterval300

  前一个参数是说要保持连接,后一个参数表示每过5分钟发一个数据包到服务器表示"我还活着"

  如果你没有root权限,修改或者创建~/.ssh/ssh_config也是可以的

 

转自:http://blog.chinaunix.net/uid-8473611-id-3069386.html

### 修改Linux系统中SSH连接的超时时间设置Linux系统中,可以通过配置SSH服务器(sshd)的相关参数来调整SSH连接的超时时间。默认情况下,如果没有显式配置超时参数,SSH连接可能会保持长时间,但具体行为取决于操作系统和SSH服务器的实现。 #### 配置SSH连接的超时时间 要修改SSH连接的超时时间,需要编辑SSH服务器的配置文件`/etc/ssh/sshd_config`。以下是关键参数及其作用: - **ClientAliveInterval**:定义服务器向客户端发送消息的时间间隔(以秒为单位),用于检测客户端是否仍然活跃。例如,设置为300表示每5分钟发送一次消息[^1]。 - **ClientAliveCountMax**:指定在没有收到客户端响应的情况下,服务器可以发送的消息次数。如果达到此限制,服务器将断开连接。例如,设置为3表示在连续三次未收到响应后断开连接。 通过结合这两个参数,可以计算出总的超时时间。例如: - 如果`ClientAliveInterval=300`且`ClientAliveCountMax=3`,则总超时时间为15分钟(5分钟×3次)。 #### 编辑配置文件 使用以下命令打开并编辑`sshd_config`文件: ```bash sudo nano /etc/ssh/sshd_config ``` 添加或修改以下行: ```plaintext ClientAliveInterval 300 ClientAliveCountMax 3 ``` 保存文件后,重启SSH服务以应用更改: ```bash sudo systemctl restart sshd ``` #### 默认情况下的超时行为 默认情况下,`ClientAliveInterval`和`ClientAliveCountMax`可能未被配置,这意味着SSH连接不会主动断开,除非发生网络故障或其他异常情况[^2]。然而,某些发行版可能设置了默认值,因此建议检查现有配置文件中的相关参数。 #### 客户端设置 除了服务器端的配置,客户端也可以通过设置`ServerAliveInterval`和`ServerAliveCountMax`来防止连接超时。例如,在SSH命令中添加选项: ```bash ssh -o ServerAliveInterval=300 -o ServerAliveCountMax=3 user@server ``` 这将使客户端定期向服务器发送消息,以保持连接活跃[^4]。 ### 示例脚本 以下是一个简单的脚本,用于备份配置文件并设置超时参数: ```bash #!/bin/bash # 备份原始配置文件 cp /etc/ssh/sshd_config /etc/ssh/sshd_config_bak # 添加超时参数 echo "ClientAliveInterval 300" >> /etc/ssh/sshd_config echo "ClientAliveCountMax 3" >> /etc/ssh/sshd_config # 重启SSH服务 systemctl restart sshd ``` #### 注意事项 - 在修改配置文件前,请确保备份原始文件,以防出现问题时可以恢复。 - 测试新配置以确保其符合预期行为。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值