Mencoba masuk SSH ke server dan mendapatkan key_load_public: Tidak ada kesalahan file atau direktori

43

Saya membuat koneksi ssh tanpa kata sandi ke server jarak jauh dari mac saya. Itu berhasil (!) Dan kemudian saya menutup terminal saya, membukanya kembali, mencoba lagi, dan mendapatkan yang berikut (nama pengguna, my_ip tidak nyata):

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

Ketika saya memeriksa .sshfolder saya , id_rsaada di sana tetapi tidak ada yang lain. Dari kesalahan, sepertinya saya perlu membuat file-file ini tetapi saya tidak yakin bagaimana melakukannya.

Bantuan apa pun akan dihargai.

Eric
sumber
1
Apakah ada masalah aktual? Misalnya, apakah Anda benar-benar gagal masuk? Bisakah Anda mengedit pertanyaan Anda untuk menyertakan hasil debug lengkap, bukan hanya bagian pertama?
Kenster
Iya; permintaan maaf saya! Saya tidak dapat masuk - dan saya telah meninggalkan baris terakhir (dan mungkin yang paling penting?) Sebelumnya.
Eric

Jawaban:

51
debug1: key_load_public: No such file or directory

Baris di atas bukan kesalahan, tetapi hanya log debug sederhana yang mengatakan bahwa sshklien tidak dapat menemukan kunci publik terpisah (bernama ~/.ssh/id_rsa.pub). File ini tidak diperlukan untuk terhubung ke server jarak jauh, tetapi ini bisa bermanfaat.

Kesalahan aktual

ssh_exchange_identification: read: Connection reset by peer

menunjuk ke kesalahan dalam konfigurasi server. Server sedang berjalan, tetapi gagal menerima koneksi SSH. Periksa log server untuk informasi lebih lanjut. Masalah serupa

Jakuje
sumber
Tautan itu sangat membantu. Dan, ternyata saya memang masuk daftar hitam (saya sudah terlalu sering masuk ke server saya ketika sedang menguji sesuatu.)
Eric
1
Masalah saya adalah tuan rumah Bastion telah mengubah alamat IP dan known_hostssalah pada Mac saya ... Itu menunjukkan @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @... Ini menunjukkan nomor baris oleh ~/.ssh/known_hosts:238. Jadi, saya menghapus baris itu, 238 dalam hal ini, dari file known_hosts di Mac saya dan saya mencoba untuk terhubung lagi dengan sukses.
Marcello de Sales
3

Masalah: bastion host IP mismatch aktif ~/.ssh/known_hosts

Saya memiliki known_hostsfile lama karena alamat IP dari bastion berubah ...

$ ssh 10.82.49.24
ssh_exchange_identification: Connection closed by remote host

Tidak memberi saya informasi apa pun. Melihat output verbose mengarah ke hal yang sama:

$ 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

Pada titik ini, karena ini adalah proxy ke host lain melalui bastion, saya dapat melihat bastion menjadi masalah:

$ 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.

Larutan

Menghapus entri pada baris 238 memecahkan masalah ... Saya bisa ssh ke bastion dan saya bisa ssh ke host.

$ 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 ~]$ 
Marcello de Sales
sumber
1

Terjadi pada saya hari ini.

Diperbaiki dengan memutus WLAN saya dan menghubungkan kembali. Ya, itu terdengar bodoh dan itu bodoh tapi setidaknya pada satu WLAN ini terjadi tanpa alasan yang jelas.

Penarga
sumber
0

Masalah yang sama, posting saja solusinya di sini

Hapus IP Anda Dari /etc/hosts.denymenggunakan:

nano /etc/hosts.deny
Qin Wang
sumber