ssh連線超時的解決

kidking2010發表於2011-05-04

平時我們透過終端連線伺服器時,當滑鼠和鍵盤長時間不操作,伺服器就會自動斷開連線,我們還的需要重新連線,感覺很麻煩,總結一下解決此問題的方法
方法一、
修改/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.

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/23141985/viewspace-694406/,如需轉載,請註明出處,否則將追究法律責任。

相關文章