Empêcher les timeout ssh

Lorsqu’on est connecté en ssh à un ordinateur distant et qu’on laisse la connexion inactive pendant un certain temps, il arrive que l’on soit déconnecté. On se retrouve alors avec un message du style :

Read from remote host buzut.fr: Connection reset by peer Connection to buzut.fr closed.

Voyons comment résoudre ce problème.

Deux approches permettent de contourner ce désagrément : l’approche serveur, et l’approche cliente.

Serveur

Si vous avez un accès administrateur au serveur, il est possible de configurer ClientAliveInterval et ClientAliveCountMax.

  • ClientAliveInterval envoie un message au client ssh après x secondes sans activité (0 = jamais). Si le client répond au serveur, la connexion est maintenue.
  • ClientAliveCountMax quant à lui, concerne le nombre maximal de requêtes ClientAliveInterval sans réponse que tolérera le serveur avant de fermer la connexion.

On va donc ajouter les lignes suivantes à /etc/ssh/sshd_config :

ClientAliveInterval 600 
ClientAliveCountMax 0

On redémarre ensuite le serveur en faisant service ssh restart.

Client

Cette solution est très pratique si l’on a pas un accès root à la machine. Il va s’agir d’utiliser la directive ServerAliveInterval. Cette dernière va faire en sorte que le client envoie toutes les x secondes une requête au serveur ssh pour lui signaler qu’il est toujours en vie. Ainsi, on évite la déconnexion par timeout. On ouvre donc /etc/ssh/ssh_config sur notre client et on y ajoute la ligne suivante :

ServerAliveInterval 120

Votre ssh ne devrait désormais plus se couper lors de vos poses cafés ;)

Déjà 3 réponses, rejoignez la discussion !

  • Ricky

    dit  :

    Dream 2016 … Vote Dream2016 dotcom !Why wait further ? … Dream 2016 &#L3O0;82OK IT UP .. The DREAM GOP is onthe way ! Succeed or fail ? Wake up.LET US BE CLEAR .. VOTE THEGUY OR BE VERY, VERY STUPID !Well, that is all for now – - – – – – – – – – – – – –

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *