SSH-time-out als gevolg van inactiviteit is vervelend. Hier leest u hoe u uw SSH-sessies in leven kunt houden en de SSH-time-out kunt voorkomen:
Door een “null packet” te versturen tussen de client en de server met een gespecificeerd interval dat kleiner is dan de time-outwaarde, kunnen we een SSH-time-out voorkomen. Het maakt niet uit of het pakket vanaf de client of de server wordt verstuurd, zolang er maar communicatie tussen de twee plaatsvindt.
Als je je SSH client instelt om de “null packets” te versturen, voorkom je een SSH timeout op alle SSH verbindingen die je vanaf je computer maakt. Als je je ergert aan je eigen SSH sessies die uitvallen als je verbinding maakt met servers, dan is dit wat je wilt doen.
Als je klanten (klanten, gebruikers, kinderen) de SSH timeout zat zijn, dan kun je ze ofwel instrueren hoe ze hun SSH clients moeten configureren – zoals door ze op dit artikel te wijzen – of je kunt de server zelf configureren om SSH sessie timeout te voorkomen. Om dat te doen, stel je de SSH server in om de “null packets” te versturen, en je voorkomt een timeout op alle SSH verbindingen die elke client maakt naar de server.
Gelukkig genoeg zijn de setups niet exclusief, dus je kunt zowel je client als al je servers instellen en alles zal soepel verlopen.
Voorkom SSH timeout aan de client kant
Als u op Mac of Linux werkt, kunt u uw lokale SSH config bestand in ~/.ssh/config
bewerken en de volgende regel toevoegen:
ServerAliveInterval 120
Dit zal elke 120 seconden een “null packet” naar uw SSH verbindingen sturen om ze in leven te houden.
Voorkom SSH timeout aan de server kant
Als u een server admin bent, kunt u het volgende toevoegen aan uw SSH daemon config in /etc/ssh/sshd_config
op uw servers om te voorkomen dat de clients een time out krijgen – zodat ze hun lokale SSH config niet hoeven aan te passen:
ClientAliveInterval 120ClientAliveCountMax 720
Dit zorgt ervoor dat de server elke 120 seconden een “null packet” naar de clients stuurt en ze niet loskoppelt totdat de client 720 intervals inactief is geweest (120 seconden * 720 = 86400 seconden = 24 uur).