Výpadky SSH v důsledku nečinnosti mohou být docela nepříjemné. Obvykle vás to nutí znovu iniciovat připojení a začít znovu.
Naštěstí můžete snadno zvýšit limit časového limitu SSH a udržet relaci SSH při životě i po určité nečinnosti. K tomu dojde, když buď server, nebo klient pošle druhému systému nulové pakety, aby udržel relaci při životě.
Související informace: Jak zabezpečit a zpevnit server OpenSSH
Podívejme se nyní, jak můžete v Linuxu zvýšit časový limit připojení SSH.
Zvýšit časový limit připojení SSH
Na serveru přejděte do konfiguračního souboru /etc/ssh/sshd_config
.
$ sudo vi /etc/ssh/sshd_config
Přejděte a najděte následující parametry:
#ClientAliveInterval #ClientAliveCountMax
Parametr ClientAliveInterval
určuje dobu v sekundách, po kterou bude server čekat, než odešle klientskému systému nulový paket, aby udržel spojení naživu.
Parametr ClientAliveCountMax
naopak určuje počet zpráv client alive, které se odešlou, aniž by klient dostal nějakou zprávu. Pokud je tento limit během odesílání zpráv dosažen, démon sshd relaci ukončí, čímž fakticky ukončí relaci ssh.
Hodnota časového limitu je dána součinem výše uvedených parametrů, tj.Tj.
Timeout value = ClientAliveInterval * ClientAliveCountMax
Příklad řekněme, že jste definovali parametry podle obrázku:
ClientAliveInterval 1200ClientAliveCountMax 3
Hodnota časového limitu bude 1200 sekund * 3 = 3600 sekund. To je ekvivalent 1 hodiny, což znamená, že vaše relace ssh zůstane naživu po dobu nečinnosti 1 hodiny, aniž by došlo k jejímu přerušení.
Alternativně můžete stejného výsledku dosáhnout zadáním samotného parametru ClientAliveInterval
.
ClientAliveInterval 3600
Po dokončení znovu načtěte démona OpenSSH, aby se změny projevily.
$ sudo systemctl reload sshd
Závěr
Jako bezpečnostní opatření SSH je vždy vhodné nenastavovat časový limit SSH na velkou hodnotu. To proto, abyste zabránili tomu, že někdo půjde kolem a unese vaši relaci, když budete delší dobu pryč. A to je pro toto téma vše.