Файлы ключей SSH не найдены после смены рабочего стола

Файлы ключей SSH не найдены после смены рабочего стола

Недавно я изменил свой рабочий стол с рабочего стола Ubuntu по умолчанию (Unity) на рабочий стол Kubuntu. Я не могу понять, почему это вызывает ошибки с моей конфигурацией файла ключей SSH.

FE есть пользователь "user" на компьютере "host", где один из моих ключей (PK находится в ~/.shh локально) добавлен к авторизованным ключам. Что я хочу сделать, так это:

ssh user@host

Это работало нормально в Unity (если я вернусь к Unity, все равно работает), но когда я вхожу в рабочий стол Kubuntu, мне предлагается ввести пароль.

Это отлично работает на обоих рабочих столах:

ssh user@host -i ~/.ssh/key

Итак, я предполагаю, что программа ssh не находит мои ключевые файлы, но почему имеет значение рабочий стол, и как это исправить?

Соответствующая часть из моего локального каталога .ssh (ls -la):

drwx------  2 szaboadam szaboadam 4096 okt    7 16:32 .
-rw-------  1 szaboadam szaboadam 1675 okt    7 16:32 key
-rw-r--r--  1 szaboadam szaboadam  415 okt    7 16:32 key.pub

И из директории .ssh сервера:

drwx------ 2 git git 4096 Oct  7 16:33 .                                           
-rwx------ 1 git git  566 Oct  7 16:33 authorized_keys    

Я использую Ubuntu 14.04. Спасибо за помощь!

решение1

Странно, что команда работает на Unity, потому что обычно ключи считываются из ~/.ssh/id_*, если они не переопределены. Вы можете переименовать keyи key.pubв id_*и id_*.pubсоответственно, где *находится dsa, rsa, ecdsaили ed25519, в зависимости от типа ключа (который вы можете получить из файла открытого ключа).

В качестве альтернативы создайте его ~/.ssh/configс помощью IdentityFile ~/.ssh/key.

РЕДАКТИРОВАТЬ:Вы также можете использовать ~/.ssh/configдля указания ключей для каждого хоста, например:

Host host1
    IdentityFile ~/.ssh/key1

Host host2
    IdentityFile ~/.ssh/key2

Связанный контент