SSH'yi sunucuya çalıştırmayı ve key_load_public alma: Böyle bir dosya veya dizin hatası yok


43

Mac'imden uzak sunucuma şifresiz bir ssh bağlantısı kurdum. Çalıştı (!) Ve sonra terminalimi kapattım, tekrar açtım, tekrar denedim ve aşağıdakileri aldım (kullanıcı adı, my_ip gerçek değil):

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

.sshKlasörümü kontrol ettiğimde ordaydı , id_rsaama hiçbiri yoktu. Hatadan, bu dosyaları bir şekilde oluşturmam gerekiyor gibi görünüyor ama nasıl yapacağımdan emin değilim.

Herhangi bir yardım takdir edilecektir.


1
Gerçek bir sorun mu var? Örneğin, gerçekten giriş yapamıyor musunuz? Sorunuzu sadece ilk bölüm yerine tam hata ayıklama çıktısını içerecek şekilde düzenleyebilir misiniz ?
Kenster

Evet; özür dilerim! Giriş yapamıyorum - ve son (ve belki de en önemli?) Satırını daha önce bırakmıştım.
Eric

Yanıtlar:


51
debug1: key_load_public: No such file or directory

Yukarıdaki satır hata değil, yalnızca basit bir hata ayıklama günlüğü, sshmüşterinin ayrı bir ortak anahtar (adında ~/.ssh/id_rsa.pub) bulamadığını söylüyor . Bu dosya uzak sunucuya bağlanmak için gerekli değildir, ancak yararlı olabilir.

Gerçek hata

ssh_exchange_identification: read: Connection reset by peer

sunucu yapılandırmasında hataya işaret eder. Sunucu çalışıyor, ancak SSH bağlantısını kabul etmiyor. Daha fazla bilgi için sunucu günlüğünü kontrol edin. Benzer sorunlar


Bu bağlantı çok yardımcı oldu. Ve, aslında kara listeye çıktığım ortaya çıktı (bir şeyi test ederken sunucuma çok fazla çarptım.)
Eric

1
Benim sorunum, bir Bastion sunucusunun IP adresini değiştirmesi ve Mac'imin known_hostsyanlış olmasıydı ... gösterdi @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @... Satır numarasını gösterir ~/.ssh/known_hosts:238. Böylece, bu satırdaki 238 numaralı satırı Mac'imdeki known_hosts dosyasından kaldırdım ve tekrar başarılı bir şekilde bağlanmaya çalıştım.
Marcello de Sales,

3

Sorun: bastion host IP uyumsuzluğu açık ~/.ssh/known_hosts

known_hostsDosyayı bodrumun IP adresi değiştikçe eski tuttum ...

$ ssh 10.82.49.24
ssh_exchange_identification: Connection closed by remote host

Bana herhangi bir bilgi vermedi. Ayrıntılı çıktıya bakmak da aynı şeye neden olur:

$ 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

Bu noktada, bastion üzerinden başka bir ev sahibinin proxy'si olduğundan, bastion'un bir sorun olduğunu görebiliyordum:

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

Çözüm

238 numaralı satırdaki girişi silmek sorunu çözdü ... ben de bodrum katına ssh ve ana bilgisayarlara ssh yazabildim.

$ 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

Bugün bana oldu.

WLAN'ın bağlantısını kesip yeniden bağlayarak düzeltildi. Evet, kulağa aptalca geliyor ve aptalca ama en azından bir WLAN'da bunun herhangi bir sebep olmadan gerçekleşti.


0

Aynı sorun, çözümü buraya gönderin.

IP’nizi /etc/hosts.denyKullanarak Şunundan Çıkarın :

nano /etc/hosts.deny
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.