SSH连接VPS时很容易就超时了,常常是切换一个窗口操作一会儿就需要重新连接,非常恼人。开始以为是我的VPS配置太低或是网络原因造成的,其实只是我没有配置好。

0. SSH Server端配置

SSH Server在这里就是VPS上的sshd了(Unix like的系统都有),可以通过修改sshd的配置文件来改变SSH session的超时时间:

vim /etc/ssh/sshd_config

然后找到下面两项:

ClientAliveInterval 30
ClientAliveCountMax 3

这两项默认可能是注释掉的,需要打开,然后填入合适的数字。简单介绍一下这两个参数的含义:

修改完配置之后,需要重启sshd来使配置生效:

/etc/init.d/ssh restart

service ssh restart

1. SSH Client端配置

除了修改Server端配置外,延长SSH Session的时间其实还可以通过修改Client端的配置来实现,这可能是更好的选择。

修改 ~/.ssh/config

Host myhostshortcut
     HostName myhost.com
     User root
     ServerAliveInterval 30
     ServerAliveCountMax 3

两个关键参数是ServerAliveIntervalServerAliveCountMax,对比一下上面Server端的两个参数,意思是对应的,只是一个是Server一个是Client,这里不再赘述。