1. 程式人生 > >SSH連接linux時,長時間不操作就斷開的解決方案(增強版)

SSH連接linux時,長時間不操作就斷開的解決方案(增強版)

正常 每分鐘 指定 防止 variable 當前 實現 客戶 不發送

1、第一次嘗試失敗

修改/etc/ssh/sshd_config文件,

找到

ClientAliveInterval 0

ClientAliveCountMax 3

並將註釋符號("#")去掉,

將ClientAliveInterval對應的0改成60,

ClientAliveInterval指定了服務器端向客戶端請求消息 的時間間隔, 默認是0, 不發送.
ClientAliveInterval 60表示每分鐘發送一次, 然後客戶端響應, 這樣就保持長連接了.
ClientAliveCountMax, 使用默認值3即可.

ClientAliveCountMax表示服務器發出請求後客戶端沒有響應的次數達到一定值, 就自動斷開.
正常情況下, 客戶端不會不響應.

重起sshd服務:

service sshd restart

依舊沒多久就斷開窗口

2、第二次嘗試成功

為了增強Linux系統的安全性,我們需要在用戶輸入空閑一段時間後自動斷開,這個操作可以由設置TMOUT值來實現。將以下字段加入到/etc/profile 中即可(對所有用戶生效)。

export TMOUT=900 # 設置900秒內用戶無操作就字段斷開終端

readonly TMOUT # 將值設置為readonly 防止用戶更改

註意:設置了readonly 之後在當前shell下是無法取消的,需要先將/etc/profile 中設置readonly行註釋起來或直接刪除,logout 後重新login 。

$ export TMOUT=900

$ readonly TMOUT

$ unset TMOUT

-bash: unset: TMOUT: cannot unset: readonly variable

SSH連接linux時,長時間不操作就斷開的解決方案(增強版)