Ssh

知道通過防火牆自動斷開來維持安靜的 ssh 連接的技巧嗎?

  • April 27, 2011

我們的企業防火牆配置為在 30 分鐘不活動後斷開 ssh 連接。有時,我需要在需要超過此時間段的持續連接的伺服器上執行操作,但我的 shell 似乎處於非活動狀態(至少對防火牆而言)。

似乎打開第二個 ssh 連接並持續活動(例如,執行頂部)不足以維持 shell。我不想將程序設置為後台,然後將一些更具互動性的前台設置為前台,因為任何警報或警告都可能會引起我的注意。我可以每隔 x 分鐘定期、重複地在 shell 視窗中按輸入鍵,但這是不可取的。

一些程序,如sweep(來自Sophos)有一個在shell 中旋轉的游標,維持連接(也就是說,它循環通過\ | / - 等等)。這很好用。

是否有一些可能與 bash 相關的技巧可以達到這個目的?

在客戶端的 .ssh/config 中,嘗試添加類似這樣的內容。

Host *
     ServerAliveInterval 60

人 ssh_config

ServerAliveInterval
        Sets a timeout interval in seconds after which if no data has
        been received from the server, ssh(1) will send a message through
        the encrypted channel to request a response from the server.  The
        default is 0, indicating that these messages will not be sent to
        the server...

從膩子中,您需要將 調整為Connection\Seconds between keepalives非零值。

引用自:https://serverfault.com/questions/264108