SSH连接超时

timed out waiting for input: auto-logout

一般是由于设置了TMOUT环境变量所致,此变量可设置于:/etc/profile,/etc/bashrc,~/.bashrc,~/.bash_profile等文件中。

可以通过在当前会话执行env|grep TMOUT查看当前生效值。

注释此设置以避免连接超时。

也可能是由于网络中断、防火墙或网络安全策略导致,咨询网络和安全相关部门即可。

packet_write_wait: Connection to x.x.x.x port 22: Broken pipe

同样的,此错误出现在会话因网络问题或长时间空闲而断开时。

可以在客户端的/etc/ssh/ssh_config中设置如下参数:

Host *
    ServerAliveInterval 60
    ServerAliveCountMax 3

或设置如下alias:

alias ssh='ssh -o ServerAliveInterval=60 -o ServerAliveCountMax=3'

这里的ServerAliveInterval表示每隔60s发送一个活动信号,ServerAliveCountMax表示探活失败3次(120s-180s)后可断开。

FAQ

1. 同样的配置为何不同系统版本表现不一样?

在CentOS 6版本中,/etc/ssh/ssh_config默认内容并不显式的包含Alive相关参数,但ssh时依然默认会进行探活。
而CentOS 7则必须显式的配置相关参数,这与CentOS 6的表现不同,应该与OpenSSL的版本变动有关。

posted @ 2024-12-11 11:02  realcp1018  阅读(43)  评论(0编辑  收藏  举报