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.

Il existe bien un paramètre TCPKeepAlive, mais il fonctionne sur la couche transport et non sur la couche applicative. C’est donc un petit peu moins fiable [en] et on préférera le désactiver au profit de ClientAliveInterval ou 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 *