Question Pourquoi mes sessions SSH gèlent-elles après un certain temps?


Toutes mes excuses si ce n'est pas le bon endroit pour poser cette question.

J'ai régulièrement besoin de ssh sur différents serveurs. Maintenant, depuis ma machine personnelle (linux mint), lorsque je me connecte via ssh, après un certain temps d'inactivité, mon shell ssh se bloque et il n'y a aucun moyen de le récupérer. La seule chose que je puisse faire est "~", ce qui me rend au moins mon shell initiateur.

Lorsque je me connecte depuis d'autres emplacements aux mêmes serveurs, il n'y a pas de problème. Cela pourrait-il être un problème avec mon fournisseur de services Internet? Comment puis-je enquêter davantage sur celui-ci?

C'est vraiment énervant, car je dois rétablir les connexions ssh après le gel, revenir à l'endroit où j'étais et reprendre le travail. Merci


8
2018-02-12 17:56


origine


Avez-vous une adresse IP statique? Dans le cas contraire, il est possible que votre fournisseur de services Internet vous ait attribué une adresse IP différente en cours de session. Consultez vos journaux et consultez. - Iain
Je n'ai pas d'adresse IP statique. Vérifierai - Fabio


Réponses:


Votre NAT supprime votre socket TCP après une période d'inactivité.

Votre client ssh peut éventuellement envoyer des noops périodiques au serveur, éliminant ainsi ce problème. Pour ce faire, ajoutez ceci à votre ~/.ssh/config:

Host *
  ServerAliveInterval 60

Sinon, reconfigurez votre NAT pour qu'il n'expire pas les éléments de sa table d'états aussi rapidement que maintenant.


En plus de ce qui précède, vous devriez utiliser un multiplexeur de terminal pour vos sessions - quelque chose comme GNU Screen ou tmux. Avec l'un ou l'autre, vous pouvez récupérer votre session en cas de déconnexion.


17
2018-02-12 18:07