securecrt 远程登录连接 linux/unix/aix 服务器时,一段时间不用会自动断开连接,需要重新连接,比较麻烦。可以有以下几种办法,但是生产环境禁用这些,只为个人学习方便,crt 超时自动断开是出于安全考虑,生产环境如果设置了超时是更加安全,不建议修改。
1. 服务器端配置
1.1 修改 /etc/profile 或 ~/.bash_profile 或 ~/.bashrc
vim /etc/profile 或 vim ~/.bash_profile 或 vim ~/.bashrc
tmout=1800 -- 添加到 /etc/profile 文件最后一行,单位为秒,1800 秒即为 30 分钟
source .bash_profile 或者 . .bash_profile --记得使修改生效
注意: tmout 设置的服务器超时时间,一定要大于 securecrt 设置反空闲时间,不然还没反超时就自动断开了
1.2 修改 /etc/ssh/sshd_config
vim /etc/ssh/sshd_config
clientaliveinterval 180 – 去掉#,设置为 180 秒,每隔 3 分钟服务器端向客户端请求一次消息的时间间隔;默认 0,表示不发送
clientalivecountmax 3 – 去掉#,表示服务器向客户端发送请求没有响应的次数就自动断开;正常情况下, 客户端不会不响应
service sshd restart 或 service sshd reload – 重启 sshd 使修改生效
注意:设置以后,securecrt一定要退出远程连接,重新登陆一次
2. 客户端配置
2.1 设置 no-op
options -> session options -> terminal -> anti-idle -> (勾选) send protocol no-op -> 60(单位秒,1分钟发送一次请求)
securecrt -> 选项 -> 会话选项 -> 终端
2.2 全局设置
securecrt —> preferences… —> default session —> edit default settings —> terminal -> anti-idle -> (勾选) send protocol no-op -> 60
3. 验证生效
securecrt 没有操作时,每隔 60 秒,自动发送一个换行符(\n)给服务器端,并在securecrt 客户端执行换行操作
这样客户端和服务器端有操作连接,保证了远程连接的保持,不会掉线。
putty -> connection -> seconds between keepalives ( 0 to turn off ), 默认为0, 改为300.