key_load_public: неверный формат с scp или git clone в Ubuntu 15.10

17

После новой установки Ubuntu 15.10 при использовании scpили git cloneя получаю следующее предупреждение (сама команда не дает сбоя):key_load_public: invalid format

Как я могу избавиться от этого предупреждения?

Обновление: это вывод 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
Александр Цайтлер
источник
Там должно быть больше, чем толькоkey_load_public: invalid format
AB
пожалуйста, опубликуйте весь подробный журнал.
Jakuje
@Jakuje Добавил подробный вывод к вопросу.
Александр Цайтлер
Я имел в виду довольно подробный журнал scp, например, scp -vvv file remote:fileчтобы увидеть контекст из ssh
Jakuje
@Jakuje Обновил это снова - это достаточно?
Александр Цайтлер

Ответы:

33

Проверьте файл /Users/alexzeitler/.ssh/id_rsa. Что здесь? Как оно туда попало?

Это должен быть ваш личный ключ RSA, не так ли? И есть ли что-то в этом /Users/alexzeitler/.ssh/id_rsa.pub? Это действительный открытый ключ?

Если вы не используете эти ключи, удалите их оба, и сообщение исчезнет. Если вы используете их по-другому, переместите их в другое место. То же самое, если они в другом формате.

Открытая часть, вероятно, повреждена, поэтому вы можете воссоздать ее из личной с помощью этой команды:

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

возможность hostkeys

Другая возможность состоит в том, что клиент пытается прочитать открытые ключи сервера для HostBasedAuthentication. Разве тебе не позволено /etc/ssh/ssh_config?

Один из этих файлов будет отсутствовать или поврежден:

/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

Ваш sshdсервер не жалуется?

Jakuje
источник
Открытый и закрытый ключи действительны, например, при использовании их с git + GitHub
Александр Цайтлер
отредактировал ответ. Ключи от сервера также могут быть причиной в некоторых случаях.
Jakuje
2
Тот был там раньше. Я считаю, что общественная часть как-то коррумпирована. Вы можете попытаться восстановить новый открытый ключ из частного использования ssh-keygen -y ~/.ssh/id_rsa.
Jakuje
3
воссоздав публичный ключ из закрытого исправил его - спасибо за вашу помощь и терпение! Пожалуйста, обновите ответ, чтобы я мог пометить его как ответ.
Александр Цейтлер
5
Кстати, команда, которую я использовал, была:ssh-keygen -f ~/.ssh/id_rsa -y > ~/.ssh/id_rsa.pub
Александр Zeitler