Configurazione Lato Server
La configurazione lato server influisce su tutti gli utenti che si connettono al server. Per modificare queste impostazioni, devi avere accesso root o privilegi di sudo sul server.
- Modifica il File di Configurazione SSH del Server: Apri il file di configurazione SSH del server con un editor di testo. Su molte distribuzioni Linux, questo file si trova in
/etc/ssh/sshd_config
.
sudo nano /etc/ssh/sshd_config
- Imposta le Direttive
ClientAliveInterval
e ClientAliveCountMax
: Aggiungi o modifica le seguenti righe nel file sshd_config
. ClientAliveInterval
specifica l’intervallo, in secondi, tra i segnali keepalive inviati dal server al client per mantenere attiva la connessione. ClientAliveCountMax
determina il numero di segnali keepalive inviati senza ricevere risposta prima che la connessione venga interrotta.
ClientAliveInterval 300
ClientAliveCountMax 3
In questo esempio, il server invia un segnale keepalive ogni 300 secondi (5 minuti), e chiuderà la connessione se non riceve risposta per tre volte consecutive.
- Riavvia il Servizio SSH: Dopo aver salvato le modifiche, riavvia il servizio SSH per applicarle.
Su sistemi che utilizzano systemd
:
sudo systemctl restart sshd
Su sistemi più vecchi:
Configurazione Lato Client
Puoi anche configurare il tuo client SSH per inviare segnali keepalive al server, mantenendo attiva la connessione dal lato client.
- Modifica il File di Configurazione SSH del Client: Il file di configurazione del client SSH si trova solitamente in
~/.ssh/config
. Se il file non esiste, puoi crearlo.
- Imposta le Direttive
ServerAliveInterval
e ServerAliveCountMax
: Aggiungi le seguenti righe per configurare i segnali keepalive lato client. Se desideri che queste impostazioni siano applicate a tutte le connessioni, aggiungile alla sezione “Host *”.
Host *
ServerAliveInterval 300
ServerAliveCountMax 3
Queste impostazioni corrispondono a quelle del server, ma agiscono dal lato client.
- Salva il File e Testa la Connessione: Salva le modifiche e testa la connessione SSH per verificare che rimanga attiva senza interruzioni.
Conclusione
Aumentare il timeout di connessione SSH può migliorare significativamente l’esperienza di amministrazione remota dei sistemi, riducendo le interruzioni durante periodi di inattività. Configurando sia il server che il client, puoi assicurarti che le tue sessioni SSH rimangano attive per tutto il tempo necessario. Ricorda di utilizzare queste impostazioni con cautela su connessioni Internet pubbliche o non sicure, poiché mantenere aperte le connessioni per lunghi periodi potrebbe presentare rischi per la sicurezza.