key_load_public: định dạng không hợp lệ với bản sao scp hoặc git trên Ubuntu 15.10


17

Sau khi cài đặt Ubuntu 15.10 mới, khi sử dụng scphoặc git clone, tôi nhận được cảnh báo sau (bản thân lệnh không bị lỗi):key_load_public: invalid format

Làm thế nào tôi có thể thoát khỏi cảnh báo này?

Cập nhật: Đây là đầu ra của scp -vvv:

OpenSSH_6.9p1 Ubuntu-2, OpenSSL 1.0.2d 9 Jul 2015
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to ... [...] port 22.
debug1: Connection established.
key_load_public: invalid format
debug1: identity file /home/alexzeitler/.ssh/id_rsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/alexzeitler/.ssh/id_rsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/alexzeitler/.ssh/id_dsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/alexzeitler/.ssh/id_dsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/alexzeitler/.ssh/id_ecdsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/alexzeitler/.ssh/id_ecdsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/alexzeitler/.ssh/id_ed25519 type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/alexzeitler/.ssh/id_ed25519-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.9p1 Ubuntu-2

Không nên có nhiều hơn mộtkey_load_public: invalid format
AB

xin vui lòng, gửi toàn bộ nhật ký verbose.
Jakuje

@Jakuje Đã thêm đầu ra dài dòng cho câu hỏi.
Alexander Zeitler

Tôi có nghĩa là đăng nhập khá dài từ scp, chẳng hạn như scp -vvv file remote:fileđể xem bối cảnh từ ssh
Jakuje

@Jakuje Cập nhật lại một lần nữa - điều này có đủ không?
Alexander Zeitler

Câu trả lời:


33

Kiểm tra tập tin /Users/alexzeitler/.ssh/id_rsa. Ở đó có gì vậy? Làm thế nào mà nó đến đó?

Nó phải là khóa RSA riêng tư của bạn phải không? Và có một cái gì đó trong /Users/alexzeitler/.ssh/id_rsa.pub? Là khóa công khai hợp lệ?

Nếu bạn không sử dụng các phím này, hãy xóa cả hai và thông báo sẽ biến mất. Nếu bạn đang sử dụng chúng theo cách khác nhau, hãy di chuyển chúng đến một nơi khác. Giống nhau nếu chúng ở định dạng khác nhau.

Phần công khai có thể bị hỏng, vì vậy bạn có thể tạo lại nó từ phần riêng tư bằng lệnh này:

ssh-keygen -f ~/.ssh/id_rsa -y > ~/.ssh/id_rsa.pub

khả năng lưu trữ

Khả năng khác là máy khách đang cố đọc khóa công khai của máy chủ HostBasedAuthentication. Bạn không cho phép nó vào /etc/ssh/ssh_config?

Nó sẽ là một trong những tệp bị thiếu hoặc bị hỏng:

/etc/ssh/ssh_host_ecdsa_key.pub
/etc/ssh/ssh_host_ed25519_key.pub
/etc/ssh/ssh_host_dsa_key.pub
/etc/ssh/ssh_host_rsa_key.pub

sshdMáy chủ của bạn không phàn nàn?


Khóa công khai và khóa riêng là hợp lệ khi sử dụng chúng với git + GitHub
Alexander Zeitler

chỉnh sửa câu trả lời. Các khóa máy chủ cũng có thể là nguyên nhân trong một số trường hợp.
Jakuje

2
Cái đó đã ở đó trước đây. Tôi tin rằng phần công cộng bị hỏng bằng cách nào đó. Bạn có thể thử tạo lại khóa công khai mới từ khóa riêng bằng cách sử dụng ssh-keygen -y ~/.ssh/id_rsa.
Jakuje

3
tạo lại khóa công khai từ khóa riêng đã sửa nó - cảm ơn sự giúp đỡ và kiên nhẫn của bạn! Vui lòng cập nhật câu trả lời để tôi có thể đánh dấu nó là câu trả lời.
Alexander Zeitler

5
Btw lệnh tôi đã sử dụng là:ssh-keygen -f ~/.ssh/id_rsa -y > ~/.ssh/id_rsa.pub
Alexander Zeitler
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.