Comandi dalla A alla Z

Come mantenere in esecuzione le sessioni SSH remote dopo la disconnessione

Come mantenere in esecuzione le sessioni SSH remote dopo la disconnessione

SSH (Secure Shell) è il sistema di rete crittografato end-to-end che consente agli utenti di accedere in remoto dal client al server o al sistema. Grazie al suo sistema di sicurezza con crittografia asimmetrica, è praticamente sicuro accedere al server anche da una rete client non sicura. Ma a volte a causa di inattività o segnale di rete scadente, l'accesso remoto SSH può essere disconnesso. Qualunque sia la ragione, in qualità di amministratore Linux, è un lavoro fondamentale mantenere le sessioni e i processi SSH in esecuzione dopo la disconnessione.

Motivi per cui le sessioni SSH vengono disconnesse


In poche parole, l'errore del proxy del tunnel SSH, il timeout di rete, l'utilizzo della porta di rete sbagliata o anche il mancato accesso al sistema come utente root possono anche farti disconnessi dall'amministrazione remota SSH. In questo post, discuteremo la domanda più frequente su SSH; come mantenere le sessioni e i processi SSH in esecuzione dopo che si è verificata la disconnessione.

1. Continua a eseguire sessioni SSH utilizzando il schermo Comando


Il schermo comando è il comando più utilizzato e utile per l'amministrazione SSH. Il schermo il comando può risolvere i problemi del nome host sia per gli indirizzi IPv4 che IPv6. Con le funzionalità di root, il schermo il comando può disconnettersi o chiudere una sessione dall'estremità del client all'estremità del server. Se sei un principiante di Linux SSH, ecco alcuni CLI che possono aiutarti a installare e trovare manuali di schermo comando.

Per Ubuntu:

$ sudo apt install screen

Per OpenSUSE:

$ sudo zypper schermata di installazione

Per Arch Linux:

$ sudo pacman -S schermo

Per Red Hat Enterprise Linux:

$ sudo yum schermata di installazione

Al termine dell'installazione, inizia a monitorare la schermata di avvio del sistema system.

$ schermo $ schermo --help

Una volta che hai l'accesso, SSH nel server, vuoi ottenere l'accesso da remoto. Se stai pianificando una lunga notte di lavoro dalla tua stazione, ma non vuoi scaricare il tuo client SSH, puoi usare il schermo comando. Questo può staccare la sessione dello schermo, ma non preoccuparti, le attività che hai avviato saranno completate.

Per staccare lo schermo premi Ctrl-A poi Ctrl-D dalla tua tastiera. Puoi accedere per monitorare l'avanzamento dei lavori in qualsiasi momento dal tuo terminale. Per riconnettersi o connettersi con quello esistente con la sessione, utilizzare la seguente CLI.

$ schermo -r schermo -D -r

2. Continua a eseguire sessioni SSH usando il tmux Attrezzo


Il tmux o multiplexer di terminale è uno strumento molto popolare e utile per programmatori e amministratori di sistema che consente agli utenti di passare da un programma all'altro nello stesso terminale. Per mantenere le sessioni SSH in esecuzione in background, tmux può essere una soluzione molto rapida. Può scollegare e ricollegare applicazioni in cui i processi vengono mantenuti in esecuzione in background. Ecco le istruzioni di installazione di tmux per le distribuzioni Linux.

Per Arch Linux:

$ sudo pacman -S tmux

Per Red Hat Enterprise Linux:

$ sudo yum install tmux

Per Ubuntu:

$ sudo apt-get install tmux

Per OpenSUSE:

$ sudo zypper install tmux

Dopo l'installazione tmux, iniziare il sessione tmux usando i comandi del terminale. Non ci vorrà molto tempo per essere installato. Una volta completata l'installazione, ora puoi iniziare con tmux. Iniziare tmux, basta digitare tmux nel terminale.

$ tmux

Se devi eseguire più di un multiplexer di terminale per mantenere tutte le sessioni SSH in esecuzione in background, in tal caso potresti incontrare difficoltà nel passare da tmux per tmux. Ecco le righe di comando per passare da una forma all'altra.

$ tmux stacca $ tmux attacca $ tmux attacca -t 2

Per controllare tutte le tmux schermo usa il tmux elenco comando.

$ tmux ls

3. Continua a eseguire sessioni SSH utilizzando il byobu Attrezzo


Lo strumento byobu viene utilizzato principalmente per l'amministrazione SSH remota e il monitoraggio su schermo su Linux. È un software open source e può essere utilizzato insieme al tmux o il schermo attrezzo. Puoi vedere lo stato attuale, le notifiche e i messaggi con il byobu attrezzo. Sebbene il byobu viene installato di default con Ubuntu. Ma se non lo fa, puoi installarlo nella tua macchina Linux. Per verificare se byobu è installato o meno nel tuo sistema controllando le altre versioni di byobu.

$ byobu --version

Quindi abilita byobu, ti aiuterà a mantenere le tue sessioni SSH in esecuzione in background anche dopo la disconnessione.

$ byobu-enable

Qui i processi di installazione sono spiegati con CLI.

Per Ubuntu:

$ sudo apt install byobu

Per OpenSUSE:

$ sudo zypper addrepo https://download.openuse.org/repositories/utilities/openSUSE_Leap_42.3/utenze.repo
$ sudo zypper refresh $ sudo zypper install byobu

Per Arch Linux:

$ yaourt -S byobu $ packer -S byobu

Per Red Hat Enterprise Linux:

$ sudo yum install byobu

Per Federa:

$ sudo dnf install byobu

Per iniziare byobu, basta digitare byobu nel terminale e premere Invio.

$ byobu

Ora, se stai usando il tmux o il schermo, puoi scegliere e selezionare tra uno qualsiasi di essi per il backend collaborato.

$ byobu-select-backend

Ora puoi gestire e mantenere le tue sessioni SSH in esecuzione in background dopo la disconnessione, usa i tasti funzione della tastiera di sistema. Per iniziare con SSH insieme a byobu, premi CTRL+MAIUSC+F2 dalla tastiera per abilitare l'ambiente SSH. Per spostare le tue sessioni SSH avanti e indietro puoi usare ALT+SU e ALT+GI.

Per disconnettere le tue sessioni SSH premi F6 dalla tastiera. Ora, se stai cercando di staccare ma non disconnettere la sessione, ecco qua. Per scollegare le sessioni SSH e continuare a connettersi, premere MAIUSC+F6. Ecco un altro comando da tastiera in più per te. Per mantenere attiva solo la sessione dello schermo corrente e chiudere tutte le altre finestre premere ALT+F6.

4. Continua a eseguire sessioni SSH usando il nohup Comando


Il nohup o il comando 'no hangup' è uno strumento alternativo molto utile per lo schermo o il tmux. Consente inoltre agli utenti di mantenere in esecuzione le sessioni SSH anche dopo essere stati disconnessi. Il nohup comando dice al sistema di eseguire tutti i processi in background evitando che il segnale si riagganci (SIGHUP).

Per controllare il nohup manuali e opzioni dal tuo terminale Linux, digita il seguente comando nel terminale e premi Invio.

$ nohup opzioni

Per controllare le liste di lavoro attualmente attive, utilizzare il -io comando dal tuo terminale.

$ lavori -l

Ora, per la connessione SSH, per evitare la perdita di connessione e mantenere le sessioni in esecuzione dopo la disconnessione, usa le righe di comando nohup che seguono il tuo lavoro. Puoi anche ottenere l'elenco di output dei tuoi lavori in un file di testo usando il comando cat insieme al comando nohup.

$ nohup ./Ciao.sh $ gatto nohup.su

Per eseguire un processo in background, puoi utilizzare il & simbolo subito dopo il nohup comando. Ad esempio, se voglio testare il ping per wordpress-408970-1286763.cloudwaysapps.com in background, la riga di comando sarà proprio come la seguente riga sotto. E quando pensi che il tuo lavoro sia finito, per vedere il risultato, usa il pgrep comando.

$ nohup ping ubuntupit.com & $ pgrep -a ping

5. Continua a eseguire sessioni SSH usando il rinnegare Comando


Se non hai i privilegi di root di sistema, forse questo risolverà il tuo problema. Il rinnegare comando può rendere qualsiasi attività non elencata dal registro di sistema in esecuzione. Pertanto, può nascondere un processo in corso per evitare tutti gli errori di disconnessione automatica o il segnale di riagganciamento (SIGHUP). Puoi effettivamente utilizzare il comando di gestione dei processi diswon per mantenere in esecuzione le tue sessioni SSH nascondendo il tuo compito.

Per rimuovere o nascondere la tua attività dal task manager, usa il comando diswon nel terminale.

$ rinnegato 

Per controllare lo stato attuale dell'attività, usa il comando della shell corrente.

$ shell corrente

Puoi anche impostare un elenco di attività con un comando terminale a riga singola.

$ rinnegare i lavori1 $ rinnegare i lavori1 i lavori2… i lavori n

E per controllare l'elenco delle attività, usa il -io comando.

$ lavori -l

Per rimuovere tutti i lavori correnti dalla finestra, digita il tasto -un sintassi seguita dal comando disown.

$ disown -a

Per rimuovere solo uno o il lavoro in esecuzione dalla finestra, utilizzare il pulsante -r sintassi seguita dal comando diswon.

$ disown -r

Ora per SSH, per eseguire un lavoro in background dopo che la sessione è stata connessa, usa il pulsante -h sintassi. Questo processo può mantenere le tue sessioni SSH in esecuzione anche dopo la disconnessione.

$ disown -h jobID $ disown -h %2

Fissando il tempo scaduto Errore di SSH in RHEL


Quando sei connesso a SSH su Red Hat Enterprise Linux (RHEL), potresti avere un problema di timeout frequente e perdere la connessione. Questo problema si verifica a causa del tempo di risposta non valido da parte del client o dell'host. Nella directory root di Red Hat, devi trovare e modificare il file sshd_config.TXT file per risolvere questi problemi di timeout. Una volta che hai finito, puoi riavere la tua connessione SSH anche dopo esserti disconnesso.

Là dentro il sshd_config.TXT, file troverai due opzioni denominate come ClientAliveInterval e ClienteAliveCountMax, è necessario modificare questi file di registro per massimizzare il tempo di risposta dal server al client. L'intervallo di timeout viene calcolato moltiplicando i valori di ClientAliveInterval e ClientAliveCountMax.

Tutto ciò che serve è modificare la durata di questi due valori in base alla durata della risposta del sistema e della rete. Consentono di massimizzare il tempo 10 minuti per la fine dell'intervallo client e 5 volte per il conteggio client, quindi il registro di testo all'interno del sshd_config.TXT il file sarà come sotto. E poi, riavvia SSH.

ClientAliveInterval 10m ClientAliveCountMax 5

Pensieri finali


Per un amministratore di sistema, mantenere le sessioni e i processi SSH in esecuzione è un lavoro cruciale per soddisfare il cliente e svolgere il compito. Disconnettersi e perdere sessioni frequenti è molto fastidioso e fastidioso. Quindi, in questo post, abbiamo cercato di discutere e illustrare i motivi per cui le sessioni SSH vengono disconnesse e abbiamo anche descritto tutti i possibili metodi su come mantenere le sessioni SSH in esecuzione dopo la disconnessione.

Se hai mai affrontato il fastidio della disconnessione della sessione SSH e sai quanto potrebbe essere fastidioso, condividi la tua esperienza con noi. E anche commenta se hai qualcosa da aggiungere o chiedi qualcosa relativo a questo post nella sezione commenti. Non dimenticare di condividere questo post con i tuoi amici sui social media.

Come mostrare il contatore FPS nei giochi Linux
I giochi Linux hanno avuto una grande spinta quando Valve ha annunciato il supporto Linux per il client Steam e i loro giochi nel 2012. Da allora, mol...
Come scaricare e giocare a Sid Meier's Civilization VI su Linux
Introduzione al gioco Civilization 6 è una versione moderna del concetto classico introdotto nella serie dei giochi Age of Empires. L'idea era abbasta...
Come installare e giocare a Doom su Linux
Introduzione a Doom La serie Doom è nata negli anni '90 dopo l'uscita dell'originale Doom. È stato un successo immediato e da quel momento in poi la s...