什麼時候這條腳本應該作為第一步
這條腳本適合那種「SSH 其實能連上,但在出密碼提示前,或進 shell 前明顯卡頓」的主機。
這種現象通常不是帳號本身的問題,而是 sshd 在等待反向 DNS 解析、GSSAPI 協商,或陷入了一個會超時但不好用的 IPv6 路徑。
腳本改了什麼,以及為什麼有效
腳本會把三項高頻優化寫進 sshd_config:UseDNS no、GSSAPIAuthentication no 和 AddressFamily inet。
第一項用來去掉反向解析等待,第二項用來關閉沒在用的 Kerberos/GSSAPI 協商,第三項則是避免老機器在有問題的 IPv6 路徑上浪費時間。
- 先備份 /etc/ssh/sshd_config
- 以冪等方式寫入設定,避免重複堆疊
- 重啟前先執行 sshd -t
- 只有檢查通過才重啟 sshd
在生產類主機上的推薦執行方式
更穩的做法是保留一個現有 SSH 工作階段,再從第二個工作階段執行腳本,只有在確認新連線已恢復正常後,才關閉原來的登入。
如果這台機器依賴 Kerberos,或明確依賴 IPv6-only 連通,就不要盲目套這組預設值。這條腳本的目標是先去掉高頻卡點,不是取代正式的 SSH 策略評審。