欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

linux ssh 持久连接

程序员文章站 2024-02-27 16:46:03
...

用客户端连接linux服务器,经常服务器经常踢开用户,很麻烦,为了一直保持连接,最少白天工作时一直连接。

  1. 在服务器端修改;
  2. 在客户端修改,所谓的客户端是指本身也是linux机器,可能是另一台server,或者是linux本地机。
  3. 对于windows系统下,修改远程登录软件的参数配置。

一、配置服务端持久连接

编辑服务器 /etc/ssh/sshd_config,最后增加

#server每隔60秒发送一次请求给client,然后client响应,从而保持连接
ClientAliveInterval 60  

#server发出请求后,客户端没有响应得次数达到3,就自动断开连接,正常情况下,client不会不响应。
ClientAliveCountMax 3

修改后需要重启sshd服务

二、配置客户端持久连接

实际上就是说,在客户端这里修改ssh的配置文件或者是(终端工具的session的配置),让ssh会主动定时发送消息,这样使得连接不会一段时间不操作后中断。

下面是设置ssh配置文件的方式来配置ssh持久连接

#vim /etc/ssh/ssh_config
(注意不是/etc/ssh/sshd_config文件,这个是server的)
在后面添加

#client每隔60秒发送一次请求给server,然后server响应,从而保持连接
ServerAliveInterval 60 

#client发出请求后,服务器端没有响应得次数达到3,就自动断开连接,正常情况下,server不会不响应
ServerAliveCountMax 3  

这表示要让所有的ssh连接自动加上此属性。

如果要指定服务端,如下:

使用-o的参数ServerAliveInterval来设置一个防止超时的时间
ssh -o ServerAliveInterval=60 IP地址 

譬如 ssh -o ServerAliveInterval=60 [email protected]

三、对于windows系统的软件

使用SecureCRT连接远程服务器,在会话(session)选项 -> 终端设置中勾选"发送协议 NO-OP"。
使用putty连接远程服务器,找到Connection -> Seconds between keepalives ( 0 to turn off ), 默认为0,改为60。

相关标签: ssh持久连接