SecureCRT 會話空閑時超時退出處理


參考文章:http://www.cnblogs.com/xuxm2007/archive/2011/04/21/2023611.html

                http://yunwei.blog.51cto.com/381136/432672

                http://www.cnblogs.com/aoyihuashao/p/3298950.html

公司網絡加固,導致CRT連接總是斷開,網上查詢的到如下兩種方式來設置SSH 連接時間。

第一種方式成功解決問題,第二種方式是網上推薦最多的,但我這邊不知哪里改錯了不適用,也暫且記下,供以后參考使用。

 

第一種解決方式:

經常使用securecrt的時候會有timed out waiting for input: auto-logout,然后會話退出了

 解決辦法,有兩個:

1.修改 

   vim /etc/profile

   TMOUT=60 #or the number of seconds you want 

    . /etc/profile 

    echo $TMOUT 

 

2.在用戶目錄下的 .bash_profile 文件中添加

   export TMOUT=60 

 

第二種解決方式:

方法一、

1、 配置服務器

     #vi /etc/ssh/sshd_config

1)找到 ClientAliveInterval參數,如果沒有就自己加一行數值是秒,比如你設置為120 ,則是2分鍾

     ClientAliveInterval 120

2)ClientAliveCountMax

     指如果發現客戶端沒有相應,則判斷一次超時,這個參數設置允許超時的次數。如3 、5等自定義。

     修改兩項參數后如下:

     ClientAliveInterval 120

     ClientAliveCountMax 0   ###在不允許超時次數

      重新加載sshd服務。執行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.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM