key_load_public: format tidak valid dengan scp atau git clone di Ubuntu 15.10

16

Setelah instalasi baru Ubuntu 15.10, ketika menggunakan scpatau git clone, saya mendapatkan peringatan berikut (perintah itu sendiri tidak gagal):key_load_public: invalid format

Bagaimana saya bisa menghilangkan peringatan ini?

Pembaruan: Ini adalah output dari 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
Alexander Zeitler
sumber
Seharusnya tidak lebih darikey_load_public: invalid format
AB
tolong, posting seluruh log verbose.
Jakuje
@ Jakuje Menambahkan output verbose ke pertanyaan.
Alexander Zeitler
Saya bermaksud log yang agak verbose scp, seperti scp -vvv file remote:fileatau lebih untuk melihat konteks dari ssh
Jakuje
@ Jakuje Diperbarui lagi - apakah ini cukup?
Alexander Zeitler

Jawaban:

33

Periksa file /Users/alexzeitler/.ssh/id_rsa. Ada apa disana Bagaimana itu bisa sampai di sana?

Itu harus menjadi kunci RSA pribadi Anda, bukan? Dan apakah ada sesuatu di dalamnya /Users/alexzeitler/.ssh/id_rsa.pub? Apakah itu kunci publik yang valid?

Jika Anda tidak menggunakan tombol-tombol ini, hapus keduanya dan pesan akan hilang. Jika Anda menggunakannya dengan cara yang berbeda, pindahkan ke tempat lain. Sama jika mereka dalam format berbeda.

Bagian publik mungkin rusak, sehingga Anda dapat membuatnya kembali dari pribadi menggunakan perintah ini:

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

kemungkinan tuan rumah

Kemungkinan lainnya adalah klien mencoba membaca kunci publik server untuk HostBasedAuthentication. Apakah Anda tidak diizinkan masuk /etc/ssh/ssh_config?

Ini akan menjadi salah satu file ini yang hilang atau rusak:

/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

sshdServer Anda tidak mengeluh?

Jakuje
sumber
Kunci publik dan pribadi valid ketika misalnya menggunakannya dengan git + GitHub
Alexander Zeitler
edit jawabannya. Kunci server dapat juga menjadi penyebab dalam beberapa kasus.
Jakuje
2
Yang itu ada di sana sebelumnya. Saya percaya bagian publik entah bagaimana rusak. Anda dapat mencoba membuat kembali kunci publik baru dari penggunaan pribadi ssh-keygen -y ~/.ssh/id_rsa.
Jakuje
3
menciptakan kunci publik dari swasta memperbaikinya - terima kasih atas bantuan dan kesabaran Anda! Harap perbarui jawabannya sehingga saya dapat menandainya sebagai jawaban.
Alexander Zeitler
5
Btw perintah yang saya gunakan adalah:ssh-keygen -f ~/.ssh/id_rsa -y > ~/.ssh/id_rsa.pub
Alexander Zeitler