如何解決SSH連接Linux超時自動斷開?


最近項目開發中用到雲服務器,部署了MySQL,開發團隊總是反映MySQL過一會兒就斷開連接了,必須手動重連才可以。反映越來越強烈,已經到了影響開發進度的高度了,必須解決!

查了資料,這個可能和SSH超時自動斷開是一樣的,可以修改以下2個配置參數來解決。

1、$TMOUT 系統環境變量

# 用以下命令判斷是否是否設置了該參數
echo $TMOUT
# 如果輸出空或0表示不超時,大於0的數字n表示n秒沒有收入則超時
# 修改方法
vi /etc/profile
# ----------------------------
export TMOUT=900
# ----------------------------
# 將以上900修改為0就是設置不超時
source /etc/profile
# 讓配置立即生效

2、sshd 服務配置

cd /etc/ssh
# 查看sshd_config中關於客戶端活動狀態的配置
grep ClientAlive sshd_config
# 默認配置如下
# ----------------------------
#ClientAliveInterval 0
#ClientAliveCountMax 3
# ----------------------------
# ClientAliveInterval指定了服務器端向客戶端請求消息的時間間隔, 默認是0, 不發送。設置60表示每分鍾發送一次, 然后客戶端響應, 這樣就保持長連接了。
# ClientAliveCountMax表示服務器發出請求后客戶端沒有響應的次數達到一定值, 就自動斷開。正常情況下, 客戶端不會不響應,使用默認值3即可。
# 備份原配置文件
cp sshd_config sshd_config.bak
# 啟用客戶端活動檢查,每60秒檢查一次,3次不活動斷開連接
sed -i "s/#ClientAliveInterval 0/ClientAliveInterval 60/g" sshd_config
sed -i "s/#ClientAliveCountMax 3/ClientAliveCountMax 3/g" sshd_config
# 確認修改
grep ClientAlive sshd_config
# 比較配置文件差異
diff sshd_config sshd_config.bak
# 重新加載ssd配置,讓配置生效
service sshd reload

修改配置截圖:

現在無論空閑多久,SSH客戶端都不會自動斷開了。

【參考資料】

http://www.linuxidc.com/Linux/2013-02/79940.htm

http://www.linuxidc.com/Linux/2013-02/79942.htm


免責聲明!

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



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