平時我們透過終端連線站群伺服器時,當滑鼠和鍵盤長時間不操作,站群伺服器就會自動斷開連線,我們還的需要重新連線,感覺很麻煩,總結一下解決此問題的方法
方法一、
修改/etc/ssh/sshd_config 配置檔案,找到 ClientAliveCountMax(單位為分鐘)修改你想要的值,
執行 service sshd reload
方法二、
找到所在使用者的.ssh 目錄, 如 root 使用者該目錄在:
/root/.ssh/
在該目錄建立 config 檔案
vi /root/.ssh/config
加入下面一句:
ServerAliveInterval 60
儲存退出,重新開啟 root 使用者的 shell,則再 ssh 遠端站群伺服器的時候,
不會因為長時間操作斷開。應該是加入這句之後,ssh 客戶端會每隔一
段時間自動與 ssh 站群伺服器通訊一次,所以長時間操作不會斷開。
方法三、
修改/etc/profile 配置檔案
# vi /etc/profile
增加:TMOUT=1800
這樣 30 分鐘沒操作就自動 LOGOUT
方法四、
利用 expect 模擬鍵盤動作,在閒置時間之內模擬地給個鍵盤響應, 將下列程式碼儲存為 xxx,然後用 expect 執行
#!/usr/bin/expect
set timeout 60
spawn ssh user@host
interact {
timeout 300 {send “x20”}
}
expect xxx
接著按提示輸入密碼就可以了,這樣每隔 300 秒就會自動打一個空格 (x20),具體的時間間隔可以根據具體情況設定。
方法五、
如果你在 windows 下透過工具連線,可以設定為
secureCRT:選項—終端—反空閒 中設定每隔多少秒傳送一個字串,或者是 NO-OP 協議包
putty:putty -> Connection -> Seconds between keepalives ( 0 to turn off ), 預設為 0, 改為 300