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

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

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

ssh user@host

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

Это отлично работает на обоих компьютерах:

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

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

Соответствующая часть из моего местного.ssh dir (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 dir:

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
Другие вопросы по тегам