Versuch, SSH in den Server zu laden und key_load_public zu erhalten: Kein solcher Datei- oder Verzeichnisfehler


43

Ich habe von meinem Mac aus eine passwortlose SSH-Verbindung zu meinem Remote-Server hergestellt. Es funktionierte (!) Und dann schloss ich mein Terminal, öffnete es erneut, versuchte es erneut und bekam Folgendes (Benutzername, my_ip sind nicht echt):

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

Als ich meinen .sshOrdner überprüfte , id_rsawar dort aber keiner der anderen. Aus dem Fehler geht hervor, dass ich diese Dateien irgendwie erstellen muss, aber ich bin nicht sicher, wie ich das tun soll.

Jede Hilfe wäre dankbar.


1
Gibt es ein aktuelles Problem? Können Sie sich beispielsweise nicht anmelden? Könnten Sie Ihre Frage so bearbeiten , dass sie die gesamte Debug-Ausgabe enthält, anstatt nur den ersten Teil?
Kenster

Ja; Entschuldigen Sie! Ich kann mich nicht einloggen - und ich habe die letzte (und vielleicht wichtigste?) Zeile vorhin abgebrochen.
Eric

Antworten:


51
debug1: key_load_public: No such file or directory

Die obige Zeile ist kein Fehler, sondern nur ein einfaches Debug-Protokoll, das besagt, dass der sshClient keinen separaten öffentlichen Schlüssel (benannt ~/.ssh/id_rsa.pub) finden kann. Diese Datei wird nicht benötigt, um eine Verbindung zum Remote-Server herzustellen, kann jedoch hilfreich sein.

Der eigentliche Fehler

ssh_exchange_identification: read: Connection reset by peer

weist auf einen Fehler in der Serverkonfiguration hin. Der Server wird ausgeführt, akzeptiert jedoch die SSH-Verbindung nicht. Überprüfen Sie das Serverprotokoll auf weitere Informationen. Ähnliche Probleme


Dieser Link war sehr hilfreich. Und es stellt sich heraus, dass ich tatsächlich auf die schwarze Liste gesetzt wurde (ich habe zu oft auf meinen Server geklickt, während ich etwas
Eric,

1
Mein Problem war, dass ein Bastion-Host die IP-Adresse geändert hatte und die known_hostsauf meinem Mac nicht korrekt war ... Es zeigte @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @... Es zeigt die Zeilennummer von ~/.ssh/known_hosts:238. Also habe ich diese Zeile, in diesem Fall 238, aus der Datei known_hosts auf meinem Mac entfernt und versucht, erneut eine Verbindung herzustellen.
Marcello de Sales

3

Problem: Die IP-Adresse des Bastion-Hosts stimmt nicht überein ~/.ssh/known_hosts

Ich hatte die known_hostsDatei alt als die IP-Adresse der Bastion geändert wurde ...

$ ssh 10.82.49.24
ssh_exchange_identification: Connection closed by remote host

Hat mir keine Informationen gegeben. Ein Blick auf die ausführliche Ausgabe führt zu demselben Ergebnis:

$ 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 ec2-user@bastion-vpc-xxxxxx.config-yyyyyyy.com -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

Da dies zu diesem Zeitpunkt ein Proxy für einen anderen Host durch die Bastion ist, konnte ich sehen, dass die Bastion ein Problem darstellt:

$ ssh ec2-user@bastion-vpc-xxxxxx.config-yyyyyyy.com -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 ec2-user@bastion-vpc-xxxxxx.config-yyyyyyy.com has changed and you have requested strict checking.
Host key verification failed.

Lösung

Das Entfernen des Eintrags in Zeile 238 löste das Problem ... Ich konnte zur Bastion ssh und ich konnte zu den Hosts ssh.

$ vim /Users/mdesales/.ssh/known_hosts

$ ssh ec2-user@bastion-vpc-xxxxxx.config-yyyyyyy.com -i ~/.ssh/xxxconfig-xxxx.pem
The authenticity of host 'ec2-user@bastion-vpc-xxxxxx.config-yyyyyyy.com (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 'ec2-user@bastion-vpc-xxxxxx.config-yyyyyyy.com -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 ~]$ 

1

Ist mir heute passiert.

Behoben durch Trennen meines WLANs und erneutes Verbinden. Ja, es klingt dumm und es ist dumm, aber zumindest bei einem WLAN ist dies ohne guten Grund passiert.


0

Gleiches Problem, einfach hier die Lösung posten

Entfernen Sie Ihre IP von der /etc/hosts.denyVerwendung von:

nano /etc/hosts.deny
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.