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.