系統維護

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 排查。

打開頁面