伺服器防止 ssh 連線一直斷線

URL Link //n.sfs.tw/13005

2019-01-04 15:49:32 By 張○○

SSH連線預設只要一段時間沒有輸入任何字,伺服器或防火牆可能會視同使用者已經斷線,會主機切斷連線,

因此我們必需修改OpenSSH Server的設定,讓他每隔5秒就送出小封包以保持連線持續

vi /etc/ssh/ssh_config

修改下面參數

TCPKeepAlive yes
#ClientAliveInterval 0
#ClientAliveCountMax 3

如果參數不存在就自行加上

TCPKeepAlive yes
ClientAliveInterval 30
ClientAliveCountMax 20

TCPKeepAlive 讓作業系統傳送TCP存活訊息到client,預設是yes

ClientAliveInterval 是伺服器每隔(秒) 傳送訊息給客戶端,客戶端收到訊息會回傳以維持連線。

ClientAliveCountMax 是經過幾次客戶端沒回應,伺服器結束連線,

上面的參數是設定30秒傳一次,20次沒回應就斷開,換句話說10分鐘。

要注意的是,使用者就算已經斷線(非正常斷線),在伺服器還是會把連線保留10分鐘。

重啟 sshd 生效

# service sshd restart

 

* 重啟後對於新的連線才具有效用

 

參考資料

[1] https://www.cnblogs.com/longshiyVip/p/4774177.html