Commandes A-Z

Comment maintenir les sessions SSH à distance en cours d'exécution après la déconnexion

Comment maintenir les sessions SSH à distance en cours d'exécution après la déconnexion

SSH (Secure Shell) est le système de réseau crypté de bout en bout qui permet aux utilisateurs d'accéder à distance du client au serveur ou au système. En raison de son système de sécurité de cryptographie asymétrique, il est à peu près sûr et sécurisé d'accéder au serveur même à partir d'un réseau client non sécurisé. Mais parfois, en raison d'une inactivité ou d'un mauvais signal réseau, l'accès à distance SSH peut être déconnecté. Quelle que soit la raison, en tant qu'administrateur Linux, il est essentiel de maintenir les sessions et les processus SSH en cours d'exécution après la déconnexion.

Raisons pour lesquelles les sessions SSH sont déconnectées


En un mot, une erreur de proxy de tunnel SSH, un délai d'expiration du réseau, l'utilisation du mauvais port réseau ou même la non-connexion à votre système en tant qu'utilisateur root peuvent également vous déconnecter de l'administration à distance SSH. Dans cet article, nous allons discuter de la question la plus fréquemment posée à propos de SSH ; comment maintenir les sessions et les processus SSH en cours d'exécution après la déconnexion.

1. Continuez à exécuter des sessions SSH à l'aide du écran Commander


le écran La commande est la commande la plus utilisée et la plus utile pour l'administration SSH. le écran La commande peut résoudre les problèmes de nom d'hôte pour les adresses IPv4 et IPv6. Avec des fonctionnalités racine, le écran la commande peut se déconnecter ou fermer une session du côté client au côté serveur. Si vous êtes un débutant sur Linux SSH, voici quelques CLI qui peuvent vous aider à installer et à trouver les manuels du écran commander.

Pour Ubuntu :

$ sudo apt écran d'installation

Pour OpenSUSE :

Écran d'installation de $ sudo zypper

Pour Arch Linux :

$ sudo pacman -S écran

Pour Red Hat Enterprise Linux :

Écran d'installation de $ sudo yum

Une fois l'installation terminée, commencez à surveiller l'écran de démarrage de votre système.

$ écran $ écran --help

Une fois que vous avez l'accès, SSH dans le serveur, vous souhaitez obtenir l'accès à distance. Si vous prévoyez une longue nuit de travail depuis votre poste, mais que vous ne voulez pas arrêter votre client SSH, vous pouvez utiliser le écran commander. Cela peut détacher votre session écran, mais pas de soucis, les tâches que vous avez initiées seront terminées.

Pour détacher votre écran, appuyez sur Ctrl-A et alors Ctrl-D depuis votre clavier. Vous pouvez vous connecter pour suivre l'avancement des travaux à tout moment depuis votre terminal. Pour vous reconnecter ou vous connecter avec celui existant avec la session, utilisez le CLI suivant.

$ écran -r écran -D -r

2. Continuez à exécuter des sessions SSH à l'aide du tmux Outil


Le multiplexeur tmux ou terminal est un outil très populaire et utile pour les programmeurs et les administrateurs système qui permet aux utilisateurs de basculer d'un programme à l'autre dans le même terminal. Pour que les sessions SSH s'exécutent en arrière-plan, tmux peut être une solution très rapide. Il peut détacher et rattacher des applications où les processus sont exécutés en arrière-plan. Voici les instructions d'installation de tmux pour les distributions Linux.

Pour Arch Linux :

$ sudo pacman -S tmux

Pour Red Hat Enterprise Linux :

$ sudo yum installer tmux

Pour Ubuntu :

$ sudo apt-get install tmux

Pour OpenSUSE :

$ sudo zypper installer tmux

Après l'installation tmux, Commencer le session tmux utiliser les commandes du terminal. L'installation ne prendra pas beaucoup de temps. Une fois l'installation terminée, vous pouvez maintenant commencer avec tmux. Commencer tmux, il suffit de taper tmux dans le terminal.

$ tmux

Si vous devez exécuter plus d'un multiplexeur de terminal pour que toutes les sessions SSH s'exécutent en arrière-plan, dans ce cas, vous pouvez rencontrer des difficultés pour basculer entre tmux à tmux. Voici les lignes de commande pour passer d'une forme à l'autre.

$ tmux detach $ tmux attach $ tmux attach -t 2

Pour vérifier tous les tmux écran utiliser le tmux liste commander.

$ tmux ls

3. Continuez à exécuter des sessions SSH à l'aide du byobu Outil


L'outil byobu est principalement utilisé pour l'administration SSH à distance et la surveillance à l'écran sous Linux. Il s'agit d'un logiciel open source et peut être utilisé avec le tmux ou la écran outil. Vous pouvez voir l'état actuel, les notifications et les messages avec le byobu outil. Bien que le byobu est installé par défaut avec Ubuntu. Mais si ce n'est pas le cas, vous pouvez l'installer dans votre machine Linux. Pour vérifier si byobu est installé ou non dans votre système en vérifiant les autres versions de byobu.

$ byobu --version

Activez ensuite byobu, cela vous aidera à garder vos sessions SSH en arrière-plan même après une déconnexion.

$ byobu-activer

Ici, les processus d'installation sont expliqués avec CLI.

Pour Ubuntu :

$ sudo apt installer byobu

Pour OpenSUSE :

$ sudo zypper adrepo https://télécharger.ouvreutilisation.org/repositories/utilities/openSUSE_Leap_42.3/utilitaires.dépôt
$ sudo zypper rafraîchir $ sudo zypper installer byobu

Pour Arch Linux :

$ yaourt -S byobu $ packer -S byobu

Pour Red Hat Enterprise Linux :

$ sudo miam installer byobu

Pour Fedora :

$ sudo dnf installer byobu

Pour commencer byobu, tapez simplement byobu dans le terminal et appuyez sur Entrée.

$ byobu

Maintenant, si vous utilisez le tmux ou la écran, vous pouvez choisir entre n'importe lequel d'entre eux pour le backend collaboratif.

$ byobu-select-backend

Maintenant, vous pouvez gérer et maintenir vos sessions SSH en arrière-plan après la déconnexion, utilisez les touches de fonction du clavier système. Pour commencer avec SSH aux côtés de byobu, appuyez sur CTRL+MAJ+F2 depuis votre clavier pour activer l'environnement SSH. Pour déplacer vos sessions SSH vers l'avant et vers l'arrière, vous pouvez utiliser ALT+HAUT et ALT+BAS.

Pour déconnecter vos sessions SSH, appuyez sur F6 du clavier. Maintenant, si vous cherchez à vous détacher mais pas à déconnecter la session, c'est parti. Pour détacher les sessions SSH et rester connecté, appuyez sur MAJ+F6. Voici une autre commande clavier supplémentaire pour vous. Pour ne conserver que la session d'écran active et fermer toutes les autres fenêtres, appuyez sur ALT+F6.

4. Continuez à exécuter des sessions SSH à l'aide du non Commander


le non ou la commande 'no hangup' est un outil alternatif très utile pour l'écran ou le tmux. Il permet également aux utilisateurs de maintenir les sessions SSH en cours d'exécution même après leur déconnexion. le non La commande indique au système d'exécuter tous les processus en arrière-plan en évitant le raccrochage du signal (SIGHUP).

Pour vérifier le non manuels et options forment votre terminal Linux, tapez la commande suivante dans le terminal et appuyez sur Entrée.

$ aucune option

Pour vérifier les listes de tâches actuellement actives, utilisez le -je commande depuis votre terminal.

$ emplois -l

Maintenant, pour la connexion SSH, pour éviter la perte de connexion et maintenir vos sessions en cours après la déconnexion, utilisez les lignes de commande nohup qui suivent votre travail. Vous pouvez également obtenir la liste de sortie de vos travaux dans un fichier texte en utilisant la commande cat avec la commande nohup.

$ non ./Bonjour.sh $ chat nohup.en dehors

Pour exécuter un processus en arrière-plan, vous pouvez utiliser le & symbole juste après le non commander. Comme, si je veux tester le ping pour wordpress-408970-12866763.cloudwaysapps.com en arrière-plan, la ligne de commande ressemblera à la ligne suivante ci-dessous. Et quand vous pensez que votre travail est terminé, pour voir le résultat, utilisez le pgrep commander.

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

5. Continuez à exécuter des sessions SSH à l'aide du renier Commander


Si vous n'avez pas les privilèges root du système, peut-être que celui-ci résoudra votre problème. le renier La commande peut rendre n'importe quelle tâche non répertoriée dans le journal de votre système en cours d'exécution. Ainsi, il peut masquer un processus en cours pour éviter toutes les erreurs de déconnexion automatique ou le raccrochage du signal (SIGHUP). Vous pouvez en fait utiliser la commande de gestion de processus diswon pour maintenir vos sessions SSH en cours d'exécution en masquant votre tâche.

Pour supprimer ou masquer votre tâche du gestionnaire de tâches, utilisez la commande diswon dans le terminal.

$ désavoué 

Pour vérifier l'état actuel de la tâche, utilisez la commande shell actuelle.

$ shell actuel

Vous pouvez également définir une liste de tâches sur une seule ligne de commande de terminal.

$ reniement emplois1 $ reniement emplois1 emplois2… emploisn

Et pour vérifier la liste des tâches, utilisez le -je commander.

$ emplois -l

Pour supprimer tous les travaux en cours de la fenêtre, tapez le -une syntaxe suivie de la commande disown.

$ désavouer -a

Pour supprimer un seul travail ou le travail en cours de la fenêtre, utilisez le -r syntaxe suivie de la commande diswon.

$ désavouer -r

Maintenant, pour SSH, pour exécuter un travail en arrière-plan après la connexion de la session, utilisez le -h syntaxe. Ce processus peut maintenir vos sessions SSH en cours d'exécution même après la déconnexion.

$ disown -h jobID $ disown -h %2

Fixation du temps libre Erreur de SSH dans RHEL


Lorsque vous êtes connecté au SSH sur Red Hat Enterprise Linux (RHEL), vous pouvez rencontrer un problème de délai d'attente fréquent et perdre votre connexion. Ce problème se produit en raison du temps de réponse non valide du côté client ou du côté hôte. Dans votre répertoire racine Red Hat, vous devez rechercher et modifier le sshd_config.SMS fichier pour résoudre ces problèmes de délai d'attente. Une fois que vous avez terminé, vous pouvez récupérer votre connexion SSH même après avoir été déconnecté.

Là à l'intérieur du sshd_config.SMS, fichier, vous trouverez deux options nommées comme Intervalle ClientAlive et ClientAliveCountMax, vous devez modifier ces fichiers journaux pour maximiser le temps de réponse du serveur au client. L'intervalle de délai d'attente est calculé en multipliant les valeurs de ClientAliveInterval et ClientAliveCountMax.

Tout ce dont vous avez besoin est de modifier la durée de ces deux valeurs en fonction de la durée de réponse de votre système et de votre réseau. Vous permet de maximiser le temps 10 minutes pour la fin de l'intervalle client et 5 fois pour le nombre de clients, puis votre registre de texte à l'intérieur du sshd_config.SMS le fichier sera comme ci-dessous. Et puis, redémarrez le SSH.

ClientAliveInterval 10m ClientAliveCountMax 5

Dernières pensées


Pour un administrateur système, maintenir les sessions et les processus SSH en cours d'exécution est un travail crucial pour satisfaire le client et accomplir la tâche. Se déconnecter et perdre des sessions fréquentes est très ennuyeux et gênant. Ainsi, dans cet article, nous avons essayé de discuter et d'illustrer les raisons pour lesquelles les sessions SSH sont déconnectées et nous avons également décrit toutes les méthodes possibles pour maintenir les sessions SSH en cours d'exécution après la déconnexion.

Si vous avez déjà vécu les tracas de la déconnexion de session SSH et savez à quel point cela peut être ennuyeux, partagez votre expérience avec nous. Et aussi commentez si vous avez quelque chose à ajouter ou demander quoi que ce soit en rapport avec ce message dans la section commentaire. N'oubliez pas de partager cette publication avec vos amis sur les réseaux sociaux.

Top 5 des cartes de capture de jeu
Nous avons tous vu et aimé des gameplays en streaming sur YouTube. PewDiePie, Jakesepticye et Markiplier ne sont que quelques-uns des meilleurs joueur...
Comment développer un jeu sur Linux
Il y a dix ans, peu d'utilisateurs de Linux prédisaient que leur système d'exploitation préféré serait un jour une plate-forme de jeu populaire pour l...
Ports Open Source des moteurs de jeux commerciaux
Les récréations de moteur de jeu gratuites, open source et multiplateformes peuvent être utilisées pour jouer à d'anciens ainsi qu'à certains des titr...