web-dev-qa-db-fra.com

SSH: Définition du délai d'attente pour le tuyau cassé

ssh a pour paramètre -o ConnectTimeout=10 de régler le délai en secondes lorsque établissement la connexion, mais une fois la connexion établie, le paramètre n'a plus d'effet. Quand une connexion déjà établie meurt, ssh prend un temps incroyable avant de me dire Broken Pipe. C’est bien dans de nombreux cas, car je peux continuer à travailler après des problèmes de réseau, mais il existe des scénarios dans lesquels je souhaite utiliser un délai d’inactivité très court, de 10 à 20 secondes par exemple, lorsque vous utilisez des outils tels que sshuttle. Comment puis-je faire ceci?

1
Rapti

L'option ClientAliveInterval fait exactement ce que vous voulez, elle envoie essentiellement des pings dans l'intervalle spécifié (en secondes) et supprime la connexion si elle ne reçoit pas de réponse.

Pour contrôler la rapidité avec laquelle la connexion est interrompue, vous pouvez utiliser ClientAliveCountMax, qui correspond au nombre maximal de requêtes ping à envoyer sans recevoir de réponse avant de considérer la connexion comme morte.

2
Lorenz