web-dev-qa-db-fra.com

Comment corriger l'erreur "ssh_exchange_identification: read: Connection reset by peer"?

Je ne peux pas me connecter à mon serveur via ssh avec mon ordinateur, mais je peux me connecter à ce serveur via mon téléphone portable à l'aide de l'application termius. J'ai vérifié /etc/hosts.allow et /etc/hosts.deny et mes iptables, et j'ai également cherché sur Google, il semble qu'aucune réponse ne corresponde à ce problème. Je ne sais pas comment le résoudre, voici ssh -v 183.17.228.80 output

debug1: Connecting to 183.17.228.80 [183.17.228.80] port 22.
debug1: Connection established.=======================   
debug1: permanently_set_uid: 0/0   
debug1: SELinux support disabled  
debug1: key_load_public: No such file or directory    
debug1: identity file /root/.ssh/id_rsa type -1    
debug1: key_load_public: No such file or directory   
debug1: identity file /root/.ssh/id_rsa-cert type -1      
debug1: key_load_public: No such file or directory   
debug1: identity file /root/.ssh/id_dsa type -1   
debug1: key_load_public: No such file or directory   
debug1: identity file /root/.ssh/id_dsa-cert type -1   
debug1: key_load_public: No such file or directory   
debug1: identity file /root/.ssh/id_ecdsa type -1  
debug1: key_load_public: No such file or directory   
debug1: identity file /root/.ssh/id_ecdsa-cert type -1   
debug1: key_load_public: No such file or directory  
debug1: identity file /root/.ssh/id_ed25519 type -1   
debug1: key_load_public: No such file or directory  
debug1: identity file /root/.ssh/id_ed25519-cert type -1  
debug1: Enabling compatibility mode for protocol 2.0  
debug1: Local version string SSH-2.0-OpenSSH_7.2p2 Ubuntu-4ubuntu2.2   
ssh_exchange_identification: read: Connection reset by peer

Je peux cingler ce serveur, voici telnet

telnet 183.17.228.29 22  
Trying 183.17.228.29...  
Connected to 183.17.228.29.  
Escape character is '^]'.                                                                 
Connection closed by foreign Host.
12
user3054879

Cela signifie en fait que votre adresse IP est sur la liste noire du serveur. Essayez de mettre votre adresse IP en liste blanche pour pouvoir vous connecter

6
Razz

Juste redémarrez votre serveur que vous voulez ssh. Cela a fonctionné pour moi, auparavant je faisais face au même problème.

6
Harsh Singhal

La façon dont j'ai résolu le problème est que je suis allé sur la machine hôte et ai exécuté quelques commandes.

Sudo mkdir /var/run/sshd
Sudo chmod 755 -R /var/run/sshd
Sudo service ssh restart

Je me suis connecté à la machine après cela.

1
Sayan Biswas

J'ai eu cette même chose arriver, et avait besoin de ssh -v 'ip addr' et puis j'ai vu que je devais accepter le certificat. Peut-être aussi une ACL ou une règle de route bloquant PuTTY: exemple -

Le client PuTTY a une adresse 10.x.x.x avec des pare-feu empêchant le réseau d'entreprise de communiquer avec les hôtes DMZ, mais votre téléphone portable situé à 58.x.x.x peut entrer en contact avec l'adresse IP publique que vous essayez d'atteindre.

je regarderais donc les informations ssh -v lorsque vous essayez de vous connecter à nouveau, voyez si vous pouvez obtenir des informations, puis vérifiez si des règles vous empêchent d'accéder à votre serveur au niveau du pare-feu ou du routeur, et non dans un environnement distant. le fichier denyhosts sur le serveur lui-même.

0
Danny

Créez une nouvelle paire de clés ssh pour l'authentification de l'utilisateur. Guide d'authentification des clés SSH et des clés publiques

Suivez simplement le guide.

0
k500

J'utilise mon point d'accès cellulaire pour me connecter au Web, alors que je travaillais, la console était gelée et je ne pouvais plus me connecter. ssh_exchange_identification: read: Connection reset by peer

J'ai essayé de réinitialiser le SRV mais cela n'a pas aidé

Ce n'est que lorsque je change de connexion réseau (vers un point d'accès sur un autre cellulaire) que je peux me reconnecter.

REMARQUE: je peux toujours utiliser l'ancienne connexion pour me connecter aux SRV sur un AWS différent, ce qui est étrange ...

0
Elia Weiss

C'est peut-être parce que vous n'avez pas de serveur openssh en cours d'exécution sur votre Ubuntu. Vous pouvez exécuter la commande ci-dessous pour vérifier le statut de votre serveur openssh.

ubuntu@ubuntu:~$ Sudo systemctl status ssh
● ssh.service - OpenBSD Secure Shell server
   Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2019-03-20 11:52:16 GMT; 5min ago
  Process: 1034 ExecStartPre=/usr/sbin/sshd -t (code=exited, status=0/SUCCESS)
 Main PID: 1058 (sshd)
    Tasks: 1
   Memory: 5.1M
      CPU: 122ms
   CGroup: /system.slice/ssh.service
           └─1058 /usr/sbin/sshd -D

Mar 20 11:52:15 ubuntu systemd[1]: Starting OpenBSD Secure Shell server...
Mar 20 11:52:16 ubuntu sshd[1058]: Server listening on 0.0.0.0 port 22.
Mar 20 11:52:16 ubuntu sshd[1058]: Server listening on :: port 22.
Mar 20 11:52:16 ubuntu systemd[1]: Started OpenBSD Secure Shell server.
Mar 20 11:52:24 ubuntu sshd[1131]: Connection closed by 10.0.2.2 port 60566 [preauth]
Mar 20 11:53:59 ubuntu sshd[1135]: Accepted password for ubuntu from 10.0.2.2 port 60654 ssh2
Mar 20 11:53:59 ubuntu sshd[1135]: pam_unix(sshd:session): session opened for user ubuntu by (uid=0)
Mar 20 11:57:48 ubuntu sshd[1238]: Accepted password for ubuntu from 10.0.2.2 port 61124 ssh2
Mar 20 11:57:48 ubuntu sshd[1238]: pam_unix(sshd:session): session opened for user ubuntu by (uid=0)

Si le statut n'est pas active (running), vous souhaiterez peut-être installer et/ou démarrer le serveur openssh. Vous pouvez le faire avec les commandes ci-dessous.

Sudo apt update
Sudo apt install openssh-server
0
Sasidhar Sekar

Il peut y avoir plusieurs raisons, mais l'une des plus possibles peut être (dans mon cas, c'était le cas) le port 22 n'est pas autorisé par le pare-fe.

Vous pouvez autoriser la connexion SSH par interface utilisateur (certains fournisseurs le permettent) ou si vous avez une autre méthode de connexion (par exemple, digitalocean fournit un bouton de console), vous pouvez exécuter la commande ci-dessous.

Sudo ufw allow ssh
Sudo ufw allow 22
0
BSB

Il semble que le démon ssh sur le serveur est bloqué. Êtes-vous sûr que ça fonctionne? Lorsque vous telnet sur ssh, vous devez voir une signature. Quelque chose comme:

telnet unixhow.com 22
Trying 35.228.26.20...
Connected to unixhow.com.
Escape character is '^]'.
SSH-2.0-OpenSSH_7.6p1 Ubuntu-4ubuntu0.1

Ce que je vois de votre sortie est que le démon ssh ne répond pas côté serveur. Je recommande de se connecter via IP-KVM (ou d'une autre manière) à la machine distante et de redémarrer sshd.

0
adm.unix

L'erreur ci-dessus se produit lorsque vous avez un nombre limité d'échecs de tentative d'authentification sur le serveur et que vous avez trop de clés ssh sur votre client (valeur supérieure à la valeur de MaxAuthTries).

Ce que vous pouvez essayer, c'est d'augmenter la valeur de MaxAuthTries et de redémarrer le démon sshd. Ou vous pouvez limiter le nombre de clés dans votre répertoire ~/.ssh et utiliser des sous-répertoires et le fichier ~/.ssh/config pour définir la clé par hôte/groupe d'hôtes

0
Romeo Ninov

Pour résoudre le problème, procédez comme suit:

  1. Redémarrez votre serveur depuis le terminal en ligne du serveur.

Si cela ne fonctionne pas,

  1. Editez le fichier $HOME/.ssh/known_hosts
  2. Supprimez tout contenu à l'intérieur de ce fichier. Lorsqu'il se reconnectera sur un serveur ssh, vous devrez ré-accepter les connexions.
0
mkmr