web-dev-qa-db-fra.com

Essayer de SSH dans le serveur et obtenir key_load_public: Aucune erreur de fichier ou de répertoire

J'ai créé une connexion ssh sans mot de passe à mon serveur distant depuis mon mac. Cela a fonctionné (!) Puis j'ai fermé mon terminal, je l'ai rouvert, j'ai réessayé et obtenu les éléments suivants (nom d'utilisateur, mon_ip ne sont pas réels):

ssh -vvv username@my_ip
OpenSSH_7.2p2, LibreSSL 2.4.1
debug1: Reading configuration data /Users/Me/.ssh/config
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 20: Applying options for *
debug1: /etc/ssh/ssh_config line 53: Applying options for *
debug2: resolving "my_ip" port 22
debug2: ssh_connect_direct: needpriv 0
debug1: Connecting to my_ip [my_ip] port 22.
debug1: Connection established.
debug1: identity file /Users/Me/.ssh/id_rsa type 1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/Me/.ssh/id_rsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/Me/.ssh/id_dsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/Mes/.ssh/id_dsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/Me/.ssh/id_ecdsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/Me/.ssh/id_ecdsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/Me/.ssh/id_ed25519 type -1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/Me/.ssh/id_ed25519-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_7.2
ssh_exchange_identification: read: Connection reset by peer

Quand j'ai vérifié mon .ssh dossier, id_rsa était là mais aucun des autres ne l'était. D'après l'erreur, il semble que je doive en quelque sorte créer ces fichiers mais je ne sais pas comment le faire.

Toute aide serait appréciée.

48
Eric
debug1: key_load_public: No such file or directory

La ligne ci-dessus n'est pas une erreur, mais un simple journal de débogage indiquant que ssh client n'est pas en mesure de trouver une clé publique distincte (nommée ~/.ssh/id_rsa.pub). Ce fichier n'est pas nécessaire pour se connecter au serveur distant, mais il peut être utile.

L'erreur réelle

ssh_exchange_identification: read: Connection reset by peer

indique une erreur dans la configuration du serveur. Le serveur est en cours d'exécution, mais n'accepte pas la connexion SSH. Consultez le journal du serveur pour plus d'informations. Problèmes similaires

56
Jakuje

Problème: non-concordance de l'adresse IP de l'hôte bastion sur ~/.ssh/known_hosts

J'avais le known_hosts fichier ancien car l'adresse IP du bastion a changé ...

$ ssh 10.82.49.24
ssh_exchange_identification: Connection closed by remote Host

Ne m'a donné aucune information. Regarder la sortie verbeuse conduit à la même chose:

$ ssh -v 10.82.49.24
OpenSSH_7.4p1, LibreSSL 2.5.0
debug1: Reading configuration data /Users/mdesales/.ssh/config
debug1: /Users/mdesales/.ssh/config line 1: Applying options for 10.82.*.*
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Executing proxy command: exec ssh -q -W 10.82.49.24:22 [email protected] -i ~/.ssh/xxxconfig-xxxx.pem
debug1: key_load_public: No such file or directory
debug1: identity file ~/.ssh/xxxconfig-xxxx.pem
debug1: key_load_public: No such file or directory
debug1: identity file ~/.ssh/xxxconfig-xxxx.pem-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_7.4
debug1: permanently_drop_suid: 1647059022
ssh_exchange_identification: Connection closed by remote Host

À ce stade, comme il s'agit d'un proxy vers un autre hôte via le bastion, je pouvais voir le bastion être un problème:

$ ssh [email protected] -i ~/.ssh/xxxconfig-xxxx.pem
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE Host IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a Host key has just been changed.
The fingerprint for the ECDSA key sent by the remote Host is
SHA256:Z8X1UlIgQ94BKJ7NA/oQi7v0NL4IlFeO7Ou4j76Zphk.
Please contact your system administrator.
Add correct Host key in /Users/mdesales/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /Users/mdesales/.ssh/known_hosts:238
ECDSA Host key for [email protected] has changed and you have requested strict checking.
Host key verification failed.

Solution

La suppression de l'entrée de la ligne 238 a résolu le problème ... Je pouvais ssh vers le bastion et je pouvais ssh vers les hôtes.

$ vim /Users/mdesales/.ssh/known_hosts

$ ssh [email protected] -i ~/.ssh/xxxconfig-xxxx.pem
The authenticity of Host '[email protected] (34.x.x.y)' can't be established.
ECDSA key fingerprint is SHA256:Z8X1UlIgQ94BKJ7NA/oQi7v0NL4IlFeO7Ou4j76Zphk.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[email protected] -i ~/.ssh/xxxconfig-xxxx.pem,34.213.y.x' (ECDSA) to the list of known hosts.
********************************************************************************
This is a private computer system containing information that is proprietary
and confidential to the owner of the system.  Only individuals or entities
authorized by the owner of the system are allowed to access or use the system.
Any unauthorized access or use of the system or information is strictly
prohibited.

All violators will be prosecuted to the fullest extent permitted by law.
********************************************************************************
Last login: Wed Aug  2 20:35:55 2017 from 10.81.31.115
[ec2-user@ip-10-82-50-142 ~]$ 
4
Marcello de Sales

Il y avait le même problème. La décida comme ça:

chmod 0600 /home/<user>/.ssh/*
1
Vladimir

Cela m'est arrivé aujourd'hui.

Résolu en déconnectant mon WLAN et en se reconnectant. Oui, cela semble stupide et c'est stupide, mais au moins sur un WLAN, cela s'est produit sans aucune bonne raison.

1
Stargazers

Même problème, il suffit de poster la solution ici

Retirez votre adresse IP de /etc/hosts.deny en utilisant :

nano /etc/hosts.deny
0
Qin Wang