系统维护

optimize_centos7_ssh.sh

适用于 SSH 登录明显变慢的 CentOS 7 老主机,常见根因是 sshd 等待反向 DNS、GSSAPI 协商或 IPv6 回退。脚本会先备份 sshd_config,再写入推荐配置、校验语法,然后重启 sshd。

一键命令

curl -fsSL helper.sh/optimize_centos7_ssh.sh | sudo bash
curl -fsSL -o optimize_centos7_ssh.sh helper.sh/optimize_centos7_ssh.sh && sudo bash optimize_centos7_ssh.sh

运行要求

  • CentOS 7 或类似 OpenSSH 主机
  • 需要 root 权限或 sudo
  • 存在 /etc/ssh/sshd_config
  • 可用 systemctl 或 service

适用场景

  • 缩短由反向 DNS 解析导致的 SSH 登录等待时间
  • 在不用 Kerberos 的主机上关闭 GSSAPI 认证
  • 把 CentOS 7 维护中的 SSH 加速步骤标准化

脚本亮点

  • 修改前自动生成带时间戳的 sshd_config 备份
  • 幂等写入 UseDNS no、GSSAPIAuthentication no 和 AddressFamily inet
  • 重启前先执行 sshd -t,避免错误配置直接生效

推荐流程

  1. 用 curl 从 helper.sh 拉取脚本。
  2. 以 root 或 sudo 方式执行。
  3. 让脚本自动完成备份、修改、校验和重启 sshd。
  4. 重新 SSH 连接,确认卡顿是否消失。

安全提示

  • 如果是生产关键主机,建议先审阅原始脚本再执行。
  • 如果服务器依赖 Kerberos 或纯 IPv6 连通,不要直接套用这些默认值。
  • 测试重启时保留一个现有 SSH 会话,避免把自己锁在门外。

相关文章

CentOS 7 SSH 登录很慢时,先怎样做一轮有效优化

一篇面向实操的说明,讲清楚当老 CentOS 7 主机在 SSH 登录前卡很久时,如何先用 optimize_centos7_ssh.sh 处理反向 DNS、GSSAPI 和 IPv6 回退这几类高频原因。

相关专题

CentOS 7 运维恢复

面向仍在运行 CentOS 7 的遗留主机,集中处理 yum 源失效、镜像仓库 404、Docker 数据迁移等运维恢复场景。

查看专题

问题页面

为什么 CentOS 7 的 SSH 登录很慢

最常见的根因是反向 DNS 解析、GSSAPI 认证协商,以及部分老环境里的 IPv6 回退。先把这些等待关掉,再做更深的 SSH 排查。

打开页面