SSH 會話不活動配置?
我試圖將確切的選項或選項組合歸零,這將強制每個 SSH 會話在指定時間不活動時終止。我正在使用 Putty SSH 到 RHEL AS3 伺服器;對於 Putty,keepalive 設置為“關閉”(0),並且 keepalive 在 ssh_config 和 sshd_config 文件中被註釋掉。
我已經Google反彈到不同的地方,我在 ServerFault 上發現了一些花絮,但我希望找到一個“具體”的解決方案。我嘗試通過添加以下內容來修改 /etc/ssh/sshd_config 文件:
ClientAliveInterval 15 ClientAliveCountMax 1
(設置為 15 秒進行測試)
然後重新啟動SSH:
/sbin/service sshd 重啟
但沒有運氣;會話從未超時(23 分鐘後檢查)。我還嘗試修改“keepalive”核心參數:
% echo “60” > /proc/sys/net/ipv4/tcp_keepalive_time (預設為 7200)
% echo “1” > /proc/sys/net/ipv4/tcp_keepalive_probes (預設為 9)
% echo “5” > /proc/sys/net/ipv4/tcp_keepalive_intvl(預設為 75)
但是會話仍然處於活動狀態(8 分鐘後檢查回來)。任何有關我缺少哪一塊拼圖的幫助將不勝感激。謝謝!
— DT
我
export TMOUT=3600
在 ~/.bashrc 中使用 1 小時後關閉非活動會話。
您設置的大部分內容看起來都是 tcp 設置。您需要告訴您的外殼程序將您註銷。關於設置 TMOUT=3600 一個小時的評論是我打分的。您可能希望將其放入全域配置文件 (
/etc/profile
)tcp keepalives 都與發送數據包的頻率有關,以保持 tcp 會話處於活動狀態。例如,如果一分鐘內沒有流量並且 tcp keep alive 設置為 60 秒,則將發送一個 keep alive 數據包以保持會話處於活動狀態。這是對各種 tcp 變數的合理描述