Pro ty, kdo by se zajímali, @edward-coast
Chcete-li nastavit zachování pro server, přidejte toto do /etc/ssh/sshd_config
:
ClientAliveInterval 60
ClientAliveCountMax 2
ClientAliveInterval :Nastavuje časový limit v sekundách, po kterém, pokud od klienta neobdrží žádná data, sshd(8) odešle zprávu přes šifrovaný kanál s žádostí o odpověď od klienta.
ClientAliveCountMax :Nastavuje počet aktivních zpráv klienta (viz níže), které mohou být odeslány, aniž by sshd(8) obdrželo nějaké zprávy zpět od klienta. Pokud je tohoto prahu dosaženo během odesílání aktivních zpráv klienta, sshd odpojí klienta a ukončí relaci.
Démon ssh (sshd), který běží na straně serveru, uzavře připojení ze strany serveru, pokud se klient odmlčí (tj. neodesílá informace). Chcete-li zabránit ztrátě připojení, dejte klientovi ssh pokyn, aby jednou za čas poslal na server signál o existenci.
Konfigurace pro toto je v souboru $HOME/.ssh/config
, vytvořte soubor, pokud neexistuje (konfigurační soubor nesmí být čitelný pro celý svět, takže spusťte chmod 600 ~/.ssh/config
po vytvoření souboru). Chcete-li posílat signál každý např. čtyři minuty (240 sekund) ke vzdálenému hostiteli, vložte do tohoto konfiguračního souboru následující:
Host remotehost
HostName remotehost.com
ServerAliveInterval 240
Chcete-li povolit odesílání signálu keep-alive pro všechny hostitele, umístěte do konfiguračního souboru následující obsah:
Host *
ServerAliveInterval 240
Chtěl jsem jednorázové řešení:
ssh -o ServerAliveInterval=60 [email protected]
Uloženo v aliasu:
alias sshprod='ssh -v -o ServerAliveInterval=60 [email protected]'
Nyní se můžete připojit takto:
[email protected]:~$ sshprod