You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CentOS 5 SSH服务器退出会话后无法立即重连问题求助

CentOS 5 SSH 退出后立即重连超时的排查方向

1. 检查TCP TIME_WAIT连接堆积情况

  • 执行 netstat -antp | grep TIME_WAIT | wc -l 查看TIME_WAIT状态的连接数量,若数值过大(比如上万),说明系统未及时回收这类连接
  • 临时调整TCP参数:执行 echo 1 > /proc/sys/net/ipv4/tcp_tw_reuse 和 echo 1 > /proc/sys/net/ipv4/tcp_tw_recycle 开启TIME_WAIT连接的复用与回收,之后测试重连是否正常
  • 永久生效:编辑 /etc/sysctl.conf,添加或修改以下配置:
    net.ipv4.tcp_tw_reuse = 1
    net.ipv4.tcp_tw_recycle = 1
    net.ipv4.tcp_fin_timeout = 30
    
    执行 sysctl -p 加载配置

2. 检查SSH服务的连接限制配置

  • 查看 /etc/ssh/sshd_config 中的关键参数:
    • 检查 MaxStartups:该参数控制未认证连接的最大数量,默认值为10:30:100,若设置过低可能导致短时间重连被拒绝
    • 检查 MaxSessions:控制每个TCP连接的最大会话数,确保数值合理
  • 修改后重启SSH服务:service sshd restart 再进行测试

3. 排查系统资源瓶颈

  • 检查CPU、内存使用情况:执行 top 或 vmstat,确认是否有进程占用过高资源,导致SSH服务无法及时响应新连接
  • 检查磁盘IO:执行 iostat,若磁盘读写负载过高,可能影响SSH服务的进程调度

4. 检查系统的TCP端口监听状态

  • 执行 netstat -antp | grep sshd,确认sshd是否持续监听22端口,是否出现监听端口丢失的情况
  • 若系统支持 ss 命令,执行 ss -tulpn | grep sshd 查看更详细的端口监听信息

5. 查看SSH服务日志

  • 查看 /var/log/secure 日志,搜索退出和重连时段的记录,排查是否有认证失败、资源不足等错误提示
  • 执行 tail -f /var/log/secure 实时查看日志,同时在客户端尝试重连,观察日志输出

6. 再次确认IPtables规则(补充排查)

  • 执行 iptables -L -n,查看是否存在针对SSH端口的超时或连接限制规则,比如--tcp-flags SYN,RST SYN的限速规则
  • 临时清空规则测试:iptables -F,之后尝试重连,确认是否由规则导致问题

内容的提问来源于stack exchange,提问作者Richie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 07:40:43