Comment résoudre Client_loop : déconnexion d’envoi : erreur de tuyau cassé
SSH, acronyme de Secure Shell, est un protocole de réseau distant utilisé pour se connecter en toute sécurité à des périphériques distants tels que des serveurs et des périphériques réseau via un réseau TCP/IP.
Il s’agit d’un protocole de réseau cryptographique qui fournit des technologies de cryptage et de hachage solides pour sécuriser la communication entre deux appareils sur un réseau.
SSH utilise deux méthodes d’authentification principales : l’authentification par mot de passe et l’authentification par clé publique. Avec l’authentification par mot de passe, un utilisateur fournit l’adresse IP ou FQDN (Fully Qualified Domain Name) et le mot de passe de l’hôte distant pour s’authentifier.
L’authentification par clé publique utilise une paire de clés SSH pour l’authentification, qui comprend deux clés SSH : les clés privées et publiques.
La clé privée réside sur l’ordinateur de l’utilisateur et doit toujours être confidentielle et sécurisée. La clé publique est enregistrée sur l’hôte distant auquel un utilisateur se connecte. Lors de l’authentification, l’identité des deux clés est comparée et l’accès est accordé.
Lors de la connexion à un système distant via SSH, vous pouvez rencontrer l’erreur Client_loop : envoyer déconnecter : Tuyau cassé.
Dans ce tutoriel, nous allons voir pourquoi cela se produit et résoudre l’erreur.
Client_loop : déconnexion d’envoi : Erreur de tuyau cassé
L’erreur est simplement un message de déconnexion qui vous informe que le délai d’expiration de votre connexion SSH a été dépassé.
Il s’agit d’une période d’inactivité pendant laquelle aucune commande Linux n’est exécutée ou émise du côté client. Lorsque cela se produit, la session SSH est terminée, ce qui vous déconnecte du serveur distant.
La plupart des utilisateurs appuient généralement sur « ENTER » ou sur une touche du clavier pour éviter d’avoir une session SSH inactive qui provoquera la déconnexion de l’hôte. Cependant, cela peut être fastidieux et faire perdre du temps.
Heureusement, les paramètres de configuration par défaut de SSH fournissent quelques paramètres que vous pouvez configurer pour que vos connexions SSH restent actives pendant de plus longues périodes.
Correction Client_loop : déconnexion d’envoi : erreur de tuyau cassé
Pour résoudre ce problème, vous devez augmenter le délai d’expiration de la connexion SSH sur le client. Pour ce faire, modifiez le fichier de configuration SSH par défaut qui se trouve généralement dans /etc/ssh/sshd_config.
$ sudo vi /etc/ssh/sshd_config
Veillez à localiser ces deux paramètres : ClientAliveInterval et ClientAliveCountMax. Voyons ce qu’ils font.
- ClientAliveInterval : il s’agit de la période d’inactivité après laquelle le serveur SSH envoie un message actif au client distant qui y est connecté.
- ClientAliveCountMax : il s’agit du nombre de tentatives que le serveur effectuera pour envoyer le message actif du serveur au client.
Nous allons définir les deux valeurs comme suit :
ClientAliveInterval 300
ClientAliveCountMax 3
Cela signifie qu’après les 300 premières secondes (5 minutes) d’inactivité du client, le serveur enverra un message actif au client pour maintenir la session SSH active.
Si aucune donnée ou réponse n’est reçue du client pendant les 300 secondes suivantes (au bout de 600 secondes), le serveur enverra à nouveau un autre message actif. Enfin, après 900 secondes d’inactivité du client, la connexion SSH sera interrompue ou abandonnée.
Assurez-vous d’enregistrer les modifications apportées au fichier, puis de quitter. Redémarrez ensuite le démon SSH.
$ sudo systemctl restart sshd
Vous pouvez également vous connecter à votre système Linux client distant en spécifiant le paramètre ServerAliveInterval en secondes (300 secondes), ce qui signifie que votre session SSH est active jusqu’à 5 minutes.
$ ssh -o ServerAliveInterval=300 username@server_ip_address
Dans ce tutoriel, nous avons montré comment résoudre l’erreur Client_loop : send disconnect : Broken pipe. Comme vous l’avez vu, tout ce dont vous avez besoin est d’effectuer quelques ajustements dans le fichier de configuration SSH.


