等Linux系统上时,客户端也可进行类似设置。
1、 配置服务器
#vi /etc/ssh/sshd_config
1)找到 ClientAliveInterval参数,如果没有就自己加一行
ClientAliveInterval 120
2)ClientAliveCountMax
指如果发现客户端没有响应,则判断一次超时,这个参数设置允许超时的次数。如3 、5等自定义
ClientAliveInterval 120
ClientAliveCountMax 3 ### 0 不允许超时次数
0和ClientAliveCountMax
3的注释符号去掉,将ClientAliveInterval对应的0改成60,没有就自己输入。
不发送.而ClientAliveInterval 60表示每分钟发送一次, 然后客户端响应,
这样就保持长连接了.ClientAliveCountMax,
使用默认值3即可.ClientAliveCountMax表示服务器发出请求后客户端没有响应的次数达到一定值, 就自动断开.
正常情况下, 客户端不会不响应.
重新加载sshd服务。退出客户端,再次登陆即可验证。
service
/etc/init.d/ssh restart
2、 配置客户端
#vi
/etc/ssh/ssh_config
ServerAliveInterval
ServerAliveInterval 300
下面是man
sshd_config获取的描述信息
ClientAliveInterval
Sets a timeout interval in seconds after which if no data has
been received from the client, sshd will send a message
through
the encrypted channel to request a response from the client.
The default is 0, indicating that these messages will not be
sent to the client. This option applies to
protocol version 2
only.
ClientAliveCountMax
Sets the number of client alive messages (see above) which
may
be sent without sshd receiving any messages back from the
client. If this threshold is reached while client
alive mes-
sages are being sent, sshd will disconnect the client,
terminat-
ing the session. It is important to note that the
use of client
alive messages is very different from TCPKeepAlive
(below). The
client alive messages are sent through the encrypted channel
and
therefore will not be spoofable. The TCP
keepalive option
enabled by TCPKeepAlive is spoofable. The client
alive mecha-
nism is valuable when the client or server depend on knowing
when a connection has become inactive.
The default value is 3. If ClientAliveInterval
(above) is set
to 15, and ClientAliveCountMax is left at the default,
unrespon-
sive ssh clients will be disconnected after approximately 45
seconds.
3、echo export TMOUT=1000000
>> /root/.bash_profile; source .bash_profile
在Linux
终端的shell环境中通过设置环境变量TMOUT来阻止超时。如果显示空白,表示没有设置, 等于使用默认值0, 一般情况下应该是不超时.
如果大于0, 可以在如/etc/profile之类文件中设置它为0.
Definition: TMOUT: If set to a value greater than zero, the value
is interpreted as the number of seconds to wait for input after
issuing the primary prompt. Bash terminates after waiting for that
number of seconds if input does not arrive