Faire persister une connexion SSH

Je travaille en ce moment à distance en uilisant SSH. Cependant j’avais un problème : lors d’un temps d’inactivité trop long, la connexion était perdue. Le temps de connexion étant important dans mon cas, c’était assez ennuyeux. Nous arrivons alors au sujet de cet article : le maintient de la connexion SSH pour éviter une déconnexion par Timeout.

La solution est toute simple : envoyer des paquets régulièrement pour que la connexion reste active et donc éviter le Timeout. Par contre inutile d’envoyer 15 paquets par seconde, le Timeout est de l’odre de 5 minutes.

Deux méthodes :

Du côté serveur, modifier le fichier de configuration /etc/ssh/sshd_config pour rajouter la ligne suivante, si elle n’y est pas déjà présente :

ClientAliveInterval 60

Vous me direz : c’est bien gentil mais je ne suis pas admin et je n’ai donc pas accès à la config du serveur. Soit. Il vous suffit alors de demander à votre démon SSH de faire le travail.

Du côté client, rajoutez dans le fichier de config /etc/ssh/ssh_config, la ligne suivante si elle n’existe pas encore :

ServerAliveInterval 60

Et voila, simple mais efficace 🙂