2011-06-09 02:12:42 +0000 2011-06-09 02:12:42 +0000
84
84

Erreur de réseau PuTTY : Le logiciel a provoqué l'interruption de la connexion

J'ai un problème étrange : lorsque j'utilise PuTTY avec SSH en me connectant à un serveur Linux hébergé dans VMware sur mon Windows 7 local, j'obtiens souvent l'erreur "Network error: Software caused connection abort" et la fenêtre SSH de PuTTY est alors inactive. Habituellement, je peux me connecter au serveur avec PuTTY et faire quelque chose, mais après un temps aléatoire (environ une ou deux minutes), j'obtiens cette erreur. Et parfois, je ne peux même pas me connecter, ce qui provoque une erreur qui dit “timeout”.

Je suppose qu'il y a un problème avec mon lecteur VMware, parce que j'ai un autre bureau Ubuntu hébergé dans VMware comme serveur de dépôt de code, et il y a le plus souvent une erreur de timeout lorsque je fais une mise à jour/commission SVN. Cependant, je suppose aussi que Windows 7 a une certaine bizarrerie parce que le même serveur Ubuntu hébergé dans VMware en tant que dépôt de code fonctionne très bien quand il est sous Windows Vista ! Il semble que toutes les mauvaises choses arrivent après que je sois passé de Windows XP à Windows Vista et ensuite à Windows 7 !

Quelle pourrait être la raison de ce problème et comment le résoudre ?

Supplément :

J'ai fait une recherche sur Google et j'ai appliqué toutes les méthodes pour aider, y compris :

  1. Activer sshd TCPKeepAlive
  2. Régler sshd ClientAliveInterval sur 900 et ClientAliveCountMax sur 3
  3. Réglez la connexion PuTTY sur 5 en réglant les “secondes entre les vies”.

Mais tout cela ne fonctionne pas ! Et la session SSH dans PuTTY se casse toujours après un certain temps !

J'ai désactivé le pare-feu du serveur Linux et le pare-feu du client Windows 7, mais la connexion est toujours interrompue ! C'est vraiment ennuyeux !

Il semble que parfois je peux me connecter, mais parfois la connexion est interrompue ! Je ne sais vraiment pas pourquoi. Cela me rend fou !

Une chose que je dois mentionner, c'est que lorsque j'utilise PuTTY SSH pour me connecter à un serveur distant, et que tout va bien !

Quand je n'arrive pas à me connecter, le ping échoue aussi ! Mais comment cela peut-il arriver ? J'utilise VMware player pour héberger le serveur Linux sur ma machine locale !

Réponses (12)

60
60
60
2012-06-25 18:52:15 +0000

Windows XP ou antérieur Système d'exploitation uniquement :

J'ai écrit cette réponse il y a 9 ans pour Windows XP, le logiciel Putty a 21 ans et cette réponse est donc utile à des fins historiques. L'actuel Zune-OS for Desktop pour smartphone de Windows a cassé Putty au niveau du réseau, dans le but d'irriter tous les points d'entrée ou de sortie qui ne font pas partie de la pile d'outils Azure Vendor.

Putty possède une fonction qui tente de résoudre ce problème:

Network Error: Software caused connection abort
  1. Start Putty
  2. Chargez vos paramètres de connexion si vous les avez enregistrés
  3. Cliquez sur “Connection”
  4. Sur la section qui dit “Envoi de paquets nuls pour garder la session active”, a changé à 5 secondes. 300 secondes peut être mieux si les pannes de réseau sont votre problème, lisez ci-dessous pour plus de détails.

Comment conserver les paquets pour éviter la déconnexion avec Putty :

Certains routeurs de réseau et pare-feu doivent garder une trace de toutes les connexions qui passent par eux. Habituellement, ces pare-feu supposent qu'une connexion est morte si aucune donnée n'est transférée dans un sens ou dans l'autre après un certain intervalle de temps. Cela peut entraîner la fermeture inattendue des sessions PuTTY par le pare-feu si aucun trafic n'est vu dans la session pendant un certain temps.

L'option keepalive (“Secondes entre les keepalives”) vous permet de configurer PuTTY pour envoyer des données par la session à intervalles réguliers, d'une manière qui ne perturbe pas la session réelle du terminal. Si vous constatez que votre pare-feu coupe les connexions inactives, vous pouvez essayer d'entrer une valeur non nulle dans ce champ. La valeur est mesurée en secondes ; ainsi, par exemple, si votre pare-feu coupe les connexions au bout de dix minutes, vous pouvez entrer 300 secondes (5 minutes) dans la case.

Réduisez le problème en utilisant l'autoguidage de Putty et l'outil “écran ”

Putty ne peut pas gérer un wifi merdique qui perd la connectivité pendant des minutes. Un moyen de contourner le problème est d'utiliser l'autologine et l'outil “screen”.

C'est un problème non négligeable pour Putty de re-synchroniser votre terminal après une minute de perte de connexion internet. Vous courez le risque d'être attaqué par un homme au milieu pendant une panne. Vous devriez vous ré-authentifier de toute façon pour en être sûr. Putty ne vous impose pas cela, il vous laisse juste tomber.

Utilisez donc autologin pour que putty puisse se connecter automatiquement en votre nom.

  1. Générez une clé privée avec l'outil puttygen sur l'ordinateur avec lequel vous êtes putty.
  2. Collez la clé publique dans votre /home/youruser/.ssh/authorized_keys du côté serveur, sur le serveur sur lequel vous utilisez putty allez vous connecter.
  3. Rendre la clé privée accessible à putty dans les paramètres de putty Connection->SSH->Auth
  4. Ajoutez la clé privée en spécifiant le fichier de clé privée sous : “Sauvegardez les paramètres de connexion au mastic. 002 Vous pourrez alors double-cliquer sur votre connexion au travers du mastic, et elle devrait vous amener directement au terminal sans avoir à taper votre nom d'utilisateur/mot de passe. 002 Vous pouvez donc maintenant accrocher une connexion au mastic sur cette connexion avec une combinaison de clavier comme F6. Ainsi, lorsque le wifi se détériore et que vous vous faites larguer. Vous écrasez F6 et vous êtes à nouveau connecté.

MAIS vous perdez toujours l'état de votre terminal ! Comment réparer cela ? Utilisez le programme "écran”. Créez un nouvel écran en tapant “screen”. Un nouvel écran est créé.

Lorsque vous êtes expulsé et que vous vous connectez automatiquement, vous pouvez vous reconnecter à votre écran. Voici un tutoriel sur la façon de le faire : http://www.tecmint.com/screen-command-examples-to-manage-linux-terminals/

C'est un vrai casse-tête de taper screen et de se reconnecter à chaque fois que l'on est expulsé. Vous pouvez donc écrire un script qui vous ramènera automatiquement au dernier écran disponible pour le rendre transparent.

Ainsi, lorsque la borne de mastic se fige. Ça ressemble à ça : Vous sentez le mépris, vous écrasez Alt+F4 pour fermer le mastic, vous écrasez F6. Et en 6 secondes, vous êtes de retour là où vous vous étiez arrêté.

Une meilleure solution, en théorie

En théorie, vous pouvez scripter tout ce processus ci-dessus, de sorte que le terminal détecte quand il a été déposé, et effectue toutes les étapes ci-dessus pour vous lors du rétablissement de la connexion Internet. Si quelqu'un connaît un programme qui fait cela automatiquement, faites-le moi savoir. Ce serait bien.

Sources : http://the.earth.li/~sgtatham/putty/0.58/htmldoc/Chapter4.html#config-keepalive http://rafaelwolf.com/?p=516

10
10
10
2012-08-20 13:35:11 +0000

Troubleshooting the PuTTY Network Error

Software caused connection abort

Lire ce que PuTTY a à dire sur l'erreur

Il s'agit d'une erreur générique produite par le code réseau de Windows lorsqu'il tue une connexion établie pour une raison quelconque. Par exemple, cela peut se produire si vous tirez le câble réseau à l'arrière d'un ordinateur connecté à Internet, ou si Windows a une autre raison similaire de croire que le réseau entier est devenu inaccessible.

Windows génère également cette erreur s'il a abandonné la machine à l'autre bout de la connexion qui lui répond. Si le réseau entre votre client et le serveur tombe en panne et que votre client tente alors d'envoyer des données, Windows fera plusieurs tentatives d'envoi de données et abandonnera ensuite la connexion pour la couper. Cela peut notamment se produire même si vous n'avez rien tapé, si vous utilisez SSH-2 et que PuTTY tente un ré-échangement de clé.

(Cela peut également se produire si vous utilisez des keepalives dans votre connexion. D'autres personnes ont signalé que les keepalives corrigent cette erreur pour elles. (Il y a des avantages et des inconvénients des keepalives.))

Nous ne connaissons aucune raison pour laquelle cette erreur pourrait se produire qui représenterait un bug dans PuTTY. Le problème se situe entre vous, votre système Windows, votre réseau et le système distant.

Essayez un autre client SSH

Le problème se situe très probablement entre PuTTY et le serveur SSH cible. Pour en avoir la preuve, utilisez un client SSH différent comme http://kitty.9bis.net ) et voyez si le problème se produit là aussi. Cela permettra probablement d'isoler le problème loin de PuTTY.

Suspect d'une connexion Internet irrégulière

Le problème peut être dû à une connexion Internet irrégulière. Connectivité Internet La surveillance de la durée de fonctionnement d'une connexion Internet est un bon moyen de déterminer si votre fournisseur d'accès Internet perd des paquets et s'il est responsable de la panne de PuTTY. Procurez-vous un logiciel qui teste la durée de fonctionnement d'une connexion Internet. Par exemple, http://code.google.com/p/internetconnectivitymonitor/ . Des déconnexions fréquentes et prolongées d'Internet constituent une violation des exigences de service du FAI. Si c'est le cas, il sera difficile de prouver que c'est la faute du FAI, car le support technique rejette automatiquement la responsabilité de ce genre de problèmes sur votre ordinateur, votre système d'exploitation, votre routeur et le câblage de votre domicile. Si vous utilisez l'internet par câble et que vous vivez dans la cambrousse, il est possible que le matériel défectueux des maisons de vos voisins envoie des parasites sur la ligne pendant quelques secondes/minutes lorsqu'ils l'allument pour la première fois. Enfin, il est possible qu'il y ait du matériel défectueux dans le réseau du fournisseur d'accès Internet à votre domicile. Le coût de remplacement du matériel est si élevé pour les FAI qu'il arrive souvent qu'ils ne le fassent pas, à moins qu'il n'y ait suffisamment d'abonnés dans une zone pour justifier ce coût.

Soupçonnez le routeur filaire/sans fil

Vous vous connectez par un routeur filaire/sans fil ? Quel est son âge ? Votre routeur pourrait être le problème. Les anciennes technologies filaires et sans fil peuvent vieillir et faire tomber les connexions de façon sporadique et les redémarrer, ce qui entraîne la mort de PuTTY. Retirez ces composants de l'équation et voyez si cela résout le problème. Essayez une connexion câblée et/ou un autre routeur pour voir si cela résout le problème. J'ai fait subir à un routeur sans fil Linksys cette mort lente et j'ai coupé des connexions et les ai redémarrées.

Soupçonnez le système d'exploitation qui fournit la connexion SSH

L'ordinateur auquel vous vous connectez avec SSH a une politique de nombre de secondes pour maintenir les connexions SSH en vie. Ce nombre est fixé à un niveau bas pour des raisons de sécurité, et vous pouvez l'augmenter. L'emplacement de ce paramètre dépend du système d'exploitation que vous utilisez et qui fournit la connexion SSH.

Si vous utilisez PuTTY via une machine virtuelle

Si vous utilisez PuTTY en passant par une machine virtuelle, il se peut qu'il y ait une politique sur la machine virtuelle qui coupe votre connexion SSH au serveur lorsqu'elle pense qu'elle est inactive. L'augmentation de ces valeurs dépend du logiciel de la machine virtuelle et du système d'exploitation que vous utilisez.

**Si la connexion Internet est mauvaise, la connexion SSH du client fonctionne :

Si votre FAI fournit une connexion instable, vous pourriez rendre les déconnexions moins pénibles avec “ssh autologin”. Ce que vous faites est de générer une clé publique et une clé privée. Et vous dites à votre serveur étranger de laisser entrer automatiquement toute personne qui fournit une clé privée précise. Cela ne résout pas complètement votre problème, mais lorsque la panne d'Internet se produit, tout ce que vous faites est de fermer la fenêtre, de double-cliquer sur une icône, et vous êtes immédiatement ramené à la ligne de commande de votre dossier d'origine sans avoir à entrer un nom d'utilisateur/mot de passe.

Cela vous aidera Y a-t-il un moyen de se “connecter automatiquement” dans PuTTY avec un mot de passe ?

4
4
4
2013-10-29 16:48:06 +0000

J'ai travaillé avec des serveurs CentOS à partir de PC Windows, et j'ai eu le même problème avec PuTTY. Une session ne durait pas plus de 1 à 5 minutes. J'ai essayé de jouer avec les paramètres de PuTTY (keepalives, etc.) mais cela n'a pas aidé du tout.

Enfin, j'ai trouvé la solution pour mon cas. J'ai enregistré des dumps TCP à la fois sur le client et le serveur. J'ai découvert que pendant 25-30 secondes avant la déconnexion, il y a plusieurs retransmissions de segments TCP dans le dump du client (à la fois du côté du client et du serveur) et finalement PuTTY envoie RST et ferme la session avec cette erreur. Dans le dump du serveur, je n'ai vu aucun segment du client pendant cette période, même RST. Cela signifie que de temps en temps, aucun segment TCP du client n'est livré au serveur et cette période est d'environ 30-60 secondes. J'ai enregistré le cas plusieurs fois et il y a toujours eu des retransmissions et des RST finaux de PuTTY. Probablement quelque part sur la route, des paquets ont été déposés par des équipements de réseau.

Pour contourner le problème, j'ai augmenté le nombre maximal de retransmissions de données de la valeur par défaut 5 à 16. Cela pourrait empêcher la déconnexion trop rapide de PuTTY. La variable est ‘HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\TcpMaxDataRetransmissions’. J'ai ajouté cette variable manuellement, elle n'était pas initialement définie dans le registre de mon Windows. Cela m'a aidé ! Maintenant, je vois que PuTTY est suspendu de temps en temps, mais il revient toujours au travail.

Pour régler le problème: 1. Enregistrez un dump TCP et cherchez les retransmissions et RST avant de vous déconnecter. 2. Si vous trouvez les mêmes retransmissions et segments RST, ajustez le nombre de tentatives du côté serveur ou client (cela dépend du côté de RST).

Attention : la modification des paramètres TCP s'applique à tous les logiciels et au système d'exploitation lui-même.

4
4
4
2013-02-08 19:08:00 +0000

Dans une invite de commande élevée, lancez les commandes suivantes :

C:\Windows\system32>netsh int tcp show global

Querying active state...

TCP Global Parameters
----------------------------------------------
Receive-Side Scaling State : enabled

Chimney Offload State : automatic

NetDMA State : enabled

Direct Cache Acess (DCA) : disabled

Receive Window Auto-Tuning Level : normal

Add-On Congestion Control Provider : none

ECN Capability : disabled

RFC 1323 Timestamps : disabled

Si Receive Window Auto-Tuning Level est normal, vous obtiendrez des problèmes. Désactivez-le et tout devrait alors fonctionner comme avant :

C:\Windows\system32>netsh int tcp set global autotuninglevel=disabled
3
3
3
2014-11-26 09:57:12 +0000

L'erreur Erreur de réseau : L'interruption de connexion provoquée par le logiciel de PuTTY est le résultat s'il y a un conflit d'adresse IP (deux ou plusieurs ordinateurs ont la même adresse IP) sur le réseau. (J'ai eu ce problème avec un Raspberry Pi qui a obtenu la même adresse IP assignée par le serveur DHCP qu'un dispositif/ordinateur malveillant qui a été configuré manuellement pour utiliser la même adresse IP)

Dans ce cas particulier, il pourrait s'agir d'un conflit d'adresse IP localement sur l'ordinateur Windows 7 ou avec un autre dispositif sur le réseau. Wireshark peut être utilisé pour retrouver avec succès ce type d'erreur.

2
2
2
2012-08-24 09:09:46 +0000

Onglet Connexion : maintenir en vie réglé à “5” secondes et activé

Mais plus important encore :

Connexion -> SSH -> Kex, Max minutes avant rekey : “2” (60 par défaut).

Mon PuTTY perdait sa clé au bout d'un moment, ce qui provoquait le timeout. Le fait de ramener cette valeur à “2” minutes a résolu le problème. Je reste connecté indéfiniment maintenant.

2
2
2
2012-08-20 13:41:23 +0000

L'erreur 10053 WSAECONNABORTED (Software caused connection abort.) est une erreur générique Winsock qui peut être émise pour un certain nombre de raisons. Cette erreur peut se produire lorsque le système de réseau local interrompt une connexion, par exemple lorsque Winsock ferme une connexion établie après l'échec de la retransmission de données (le récepteur n'accuse jamais réception des données envoyées sur une prise de flux de données). Les raisons de ce problème peuvent aller de câbles de réseau défectueux à une simple perte de connectivité. Il est impossible de proposer une solution unique.

2
2
2
2013-02-28 23:27:57 +0000

J'ai eu le même problème avec PuTTY après avoir installé un nouveau routeur WLAN / modem 3G pour me connecter à l'Internet. J'ai essayé toutes les solutions ci-dessus - et toutes celles du menu de configuration de mon routeur - sans résultat.

Puis je me suis souvenu d'une chose qui s'est produite dans les années 90, lorsque j'avais un modem de téléphone fixe : le MTU (maximum transmission unit), c'est-à-dire la taille maximale des données transférées - cela avait un effet notable sur la stabilité de la connexion.

J'ai donc vérifié la configuration de mon routeur WLAN, j'ai trouvé le paramètre MTU et je l'ai modifié d'une valeur fixe de 1424 à “Auto” (je voulais essayer une valeur plus petite, mais “Auto” sonnait encore mieux). Après cela, je n'ai plus eu de problèmes avec PuTTY - la connexion est maintenant solide comme un roc. J'espère que cela aidera au moins quelqu'un avec le problème “Erreur de réseau : le logiciel a provoqué l'interruption de la connexion”.

1
1
1
2017-05-31 04:54:07 +0000

En fait, j'ai été confronté à ce problème à de nombreuses reprises. J'ai cherché une solution en passant des heures, mais aucune n'a été efficace. Je partage la solution qui a fonctionné pour moi et j'espère qu'elle sera également utile à d'autres.

J'ai Windows 10 en tant qu'hôte O/S et Redhat-7 en tant qu'invité O/S et ma VMware avait une connexion pontée. En tant que DBA, je dois rendre visite à des clients et je dois définir ma configuration réseau en fonction des locaux du client. Ainsi, chaque fois que je quitte les locaux du client et que je me connecte à un autre réseau via une machine virtuelle ouverte et sans fil, je suis confronté au même problème que celui mentionné dans la question. J'ai donc réfléchi pendant un moment et j'ai vérifié ma configuration pour Ethernet LAN et Ethernet sans fil et j'ai trouvé un problème de compatibilité. Comme ma VM utiliserait automatiquement l'Ethernet physique entre deux pour le pontage. Donc quand j'ai réinitialisé la configuration réseau pour LAN/Wireless Ethernet en DHCP, cela a fonctionné comme sur des roulettes et la connexion n'a plus été interrompue. [Vous pouvez aussi redémarrer votre machine hôte après l'avoir configurée en DHCP].

1
1
1
2013-03-12 16:11:43 +0000

J'ai rencontré le même problème avec un script WinSCP ou une console GUI. Finalement, j'ai découvert que cela était lié à la vitesse (vitesse d'Internet - notre serveur est sur Internet). J'ai déplacé le script à un autre endroit du réseau, sur un autre site, et l'interface graphique et le script ne se sont pas tous deux bien passés.

Le problème a été résolu après de nombreuses analyses et tris.

0
0
0
2011-06-09 22:30:02 +0000

Vous devez activer TCPKeepAlive sur Linux.

C'est expliqué dans la FAQ de PuTTy sur le site web, lorsque vous êtes à la recherche de cette erreur.

0
0
0
2013-01-10 17:23:40 +0000

Si la machine virtuelle fonctionne sur votre matériel local, désactivez la fonction “keep alive packets”.