Come mantenere viva la connessione SSH?


11

Come posso mantenere viva una connessione SSH senza utilizzarla attivamente. Quando lo uso, funziona bene, ma quando non lo uso per alcuni minuti, si disconnette. Quando ricevo un'email ogni volta che mi connetto, come posso mantenere viva la sessione SSH?

Nota: nel mio .ssh/configfile, nella parte superiore ho

Host *
ServerAliveInterval 3

ma non sembra funzionare.


Quale client ssh? 3 è troppo corto, usa un intervallo di 60. Puoi anche inserirlo in / etc / ssh / ssh_config se hai accesso root.
Pantera,

*dovrebbero essere tutti loro, no?
NerdOfLinux il

Non credo che funzioni con PuTTY
Panther il

Risposte:


10

È necessario specificare la quantità di tentativi e l'intervallo di invio di un pacchetto al server. È possibile inserire le seguenti righe nel .ssh/configfile:

Host examplehost
    Hostname examplehost.com
    ServerAliveInterval 180
    ServerAliveCountMax 2

Questo invierà un pacchetto al server ogni 180 secondi (3 minuti) e proverà due volte prima di chiudere la connessione senza ricevere risposta dal client.


2
Mi ero completamente dimenticato del ServerAliveCountMax, che è probabilmente ciò che ha risolto il mio problema.
NerdOfLinux il

4

Sui sistemi operativi Linux e Apple Mac OS X, il ~/.ssh/configfile consente di specificare molte impostazioni SSH, comprese quelle che mantengono attiva una connessione SSH. Per fare ciò, attenersi alla seguente procedura:

  1. Usa il tuo editor di testo preferito per aprire il ~/.ssh/configfile sul tuo computer locale. Nota: se la .sshdirectory o il file di configurazione non esistono, crearli.

  2. Aggiungi le seguenti righe al file di configurazione. Il valore Host può essere qualsiasi nome tu voglia; è semplicemente un'etichetta per le altre impostazioni. Il valore Nome host è l'host remoto a cui si desidera accedere; sostituisci esempio.com con il tuo nome di dominio. Sostituisci il nome utente con il tuo nome utente dell'account di hosting:


    Host example
        Hostname example.com
        Port 7822
        User username
        ServerAliveInterval 240
        ServerAliveCountMax 2

Con questa configurazione, il client SSH invia un pacchetto al server ogni 240 secondi (4 minuti) per mantenere attiva la connessione. Se il client non riceve una risposta dopo due tentativi (come specificato dall'impostazione ServerAliveCountMax), chiude la connessione.

Per informazioni dettagliate su tutte le impostazioni di configurazione SSH disponibili, digitare man ssh_configdalla riga di comando.

  1. Salvare le modifiche nel file di configurazione.

  2. Collegati al tuo account tramite SSH. Per fare ciò, digita semplicemente ssh example dove example rappresenta il valore Host specificato nel passaggio 2.

Monitora la connessione. Se il problema persiste, ridurre gradualmente l' ServerAliveIntervalimpostazione nel file di configurazione fino a quando la connessione non è stabile.

Controlla il seguente URL per maggiori dettagli https://www.a2hosting.com/kb/getting-started-guide/accessing-your-account/keeping-ssh-connections-alive


4

Puoi anche aggiungere questi argomenti nel comando ssh, in questo modo ...

ssh -o ServerAliveInterval=180 -o ServerAliveCountMax=2 $HOST
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.