Sådan Holder Du Din SSH-Forbindelse Aktiv med Bash - En Trin-for-Trin Guide

Hvordan kan en SSH-forbindelse holdes aktiv på en klientmaskine uden at ændre SSH-serverens konfiguration eller installere yderligere software, ved hjælp af Bash til automatisk at detektere inaktivitet og starte en kommando som "top"?

For at holde en SSH-forbindelse aktiv på en klientmaskine uden at ændre serverens konfiguration, kan du oprette et Bash-script, der overvåger inaktivitet og udfører en kommando som "top".

Sådan holder du en SSH-forbindelse aktiv på en klientmaskine ved hjælp af Bash

For at holde en SSH-forbindelse aktiv på en klientmaskine uden at ændre SSH-serverens konfiguration eller installere yderligere software, kan du bruge Bash til automatisk at detektere inaktivitet og starte en kommando som "top". Følg disse trin:

  1. Opret et Bash-script: Opret et Bash-script, der overvåger inaktivitet og udfører en kommando som "top" for at holde forbindelsen aktiv.

    #!/bin/bash
    
    # Tidsinterval for inaktivitet (i sekunder)
    IDLE_TIME=300
    
    # Kommando til at holde forbindelsen aktiv
    KEEP_ALIVE_CMD="top -b -n 1"
    
    # Funktion til at tjekke inaktivitet
    check_idle() {
      local idle=$(xprintidle)
      if [ "$idle" -gt "$IDLE_TIME" ]; then
        $KEEP_ALIVE_CMD
      fi
    }
    
    # Uendelig løkke til at tjekke inaktivitet
    while true; do
      check_idle
      sleep 60
    done
  2. Installer xprintidle: For at kunne måle inaktivitet, skal du installere xprintidle. Dette værktøj returnerer inaktivitetstiden i millisekunder.

    sudo apt-get install xprintidle
  3. Gør scriptet eksekverbart: Giv scriptet eksekverbare rettigheder.

    chmod +x /path/to/your/script.sh
  4. Kør scriptet: Kør scriptet i baggrunden for at holde SSH-forbindelsen aktiv.

    /path/to/your/script.sh &

Ved at følge disse trin kan du holde din SSH-forbindelse aktiv uden at ændre serverens konfiguration eller installere yderligere software. Scriptet overvåger inaktivitet og udfører en kommando som "top" for at forhindre forbindelsen i at blive afbrudt.