Đang cố gắng SSH vào máy chủ và nhận key_load_public: Không có lỗi tệp hoặc thư mục như vậy


43

Tôi đã tạo một kết nối ssh không mật khẩu đến máy chủ từ xa từ máy mac của tôi. Nó hoạt động (!) Và sau đó tôi đóng thiết bị đầu cuối của mình, mở lại, thử lại và nhận được thông tin sau (tên người dùng, my_ip không có thật):

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

Khi tôi kiểm tra .sshthư mục của mình , id_rsađã có nhưng không có ai khác. Từ lỗi, có vẻ như tôi cần bằng cách nào đó tạo các tệp này nhưng không chắc chắn làm thế nào để làm như vậy.

Bất kỳ trợ giúp sẽ được đánh giá cao.


1
Có một vấn đề thực tế? Ví dụ, bạn thực sự không đăng nhập? Bạn có thể chỉnh sửa câu hỏi của mình để bao gồm đầu ra gỡ lỗi hoàn chỉnh, thay vì chỉ phần đầu tiên không?
Kenster

Đúng; lời xin lỗi của tôi! Tôi không thể đăng nhập - và tôi đã rời khỏi dòng cuối cùng (và có lẽ là quan trọng nhất?) Trước đó.
Eric

Câu trả lời:


51
debug1: key_load_public: No such file or directory

Dòng trên không có lỗi, nhưng chỉ là nhật ký gỡ lỗi đơn giản nói rằng sshmáy khách không thể tìm thấy khóa công khai riêng biệt (có tên ~/.ssh/id_rsa.pub). Tập tin này không cần thiết để kết nối với máy chủ từ xa, nhưng nó có thể hữu ích.

Lỗi thực tế

ssh_exchange_identification: read: Connection reset by peer

chỉ ra lỗi trong cấu hình máy chủ. Máy chủ đang chạy, nhưng không chấp nhận kết nối SSH. Kiểm tra nhật ký máy chủ để biết thêm thông tin. Vấn đề tương tự


Liên kết đó rất hữu ích. Và, hóa ra tôi thực sự đã bị liệt vào danh sách đen (tôi đã vào máy chủ của mình quá nhiều lần trong khi tôi đang thử nghiệm một cái gì đó.)
Eric

1
Vấn đề của tôi là máy chủ Bastion đã thay đổi địa chỉ IP và known_hostskhông chính xác trên máy Mac của tôi ... Nó hiển thị @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @... Nó hiển thị số dòng theo ~/.ssh/known_hosts:238. Vì vậy, tôi đã xóa dòng đó, 238 trong trường hợp này, từ tệp know_hosts trên máy Mac của tôi và tôi đã cố gắng kết nối lại thành công.
Marcello de Sales

3

Vấn đề: IP máy chủ pháo đài không khớp ~/.ssh/known_hosts

Tôi đã có known_hoststập tin cũ khi địa chỉ IP của pháo đài thay đổi ...

$ ssh 10.82.49.24
ssh_exchange_identification: Connection closed by remote host

Không cho tôi bất kỳ thông tin. Nhìn vào đầu ra dài dòng dẫn đến điều tương tự:

$ 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

Tại thời điểm này, vì nó là proxy cho một máy chủ khác thông qua pháo đài, tôi có thể thấy pháo đài là một vấn đề:

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

Giải pháp

Xóa mục nhập trên dòng 238 đã giải quyết vấn đề ... Tôi có thể ssh vào pháo đài và tôi có thể ssh cho các máy chủ.

$ 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

Đã xảy ra với tôi ngày hôm nay.

Đã sửa lỗi bằng cách ngắt kết nối mạng WLAN của tôi và kết nối lại. Vâng, nghe có vẻ ngu ngốc và thật ngu ngốc nhưng ít nhất trên một mạng WLAN, điều này đã xảy ra mà không có lý do chính đáng nào.


0

Vấn đề tương tự, chỉ cần đăng giải pháp ở đây

Xóa IP của bạn khỏi /etc/hosts.denysử dụng:

nano /etc/hosts.deny
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.