LINUX.ORG.RU

ssh («неубиваемый» publickey)


0

4

Настроив доступ на сервер по публичному ключу - столкнулся с такой фичей (или багой может быть):
На клиенте создал RSA ключ ssh-keygen в ~/.ssh с именем хост_юзер_rsa (обращаю внимание на место!). Без парольной фразы для тестов. На серваке, понятное дело, внёс соответствующему пользователю публичный ключ клиента в ~/.ssh/authorized_keys. В конфиге sshd на сервере оставил юзеру авторизацию только по публичному ключу.

Итак в чём соль - при попытке соединения с клиента ssh юзер@сервер, т.е. без явного указания ключа - ТЕМ НЕ МЕНЕЕ данный ключ НАХОДИТ и подставляет (!). ssh-agent не запускал в явном виде да и в процессах его не наблюдаю. В конфиге ssh на клиенте данный ключ в IdentityKey разумеется не добавлял.

ssh-add -L выводит данный ключ. Пробую удалить из памяти ssh-add -D. Пишет, что все ключи удалены. Повторяем ssh-add -L - снова выводит тот же ключ. Т.е. ключ не убивается! ssh -d путь/ключ тоже не помогает. Причём после рестарта сессии\машины этот ключ всё также выводится по ssh-add -L (!).

«Лекарство» - создать копию файла ключа, оригинал удалить - из ssh-add -L исчезает (если просто переместить в прелелах ФС, а потом вернуть обратно - снова виден), переименовать копию в оригинал. Всё - ssh-add -L девственно чист.

p.s.
Что это вообще такое, т.к. в доках об этой «фиче» ни слова?
p.p.s.
Fedora 14.1, OpenSSH_5.5p1, OpenSSL 1.0.0d-fips 8 Feb 2011


Ответ на: комментарий от anton_jugatsu

Ты наверное хотел сказать: ssh -vvv ?
Так с ним и пытал. Ничего особенного там нет, за исключением куска лога непостредственно перед попыткой заюзать публичный ключ. Перед этим выводится список всех ключей, что доступны для авторизации. Строки вида: key путь/ключ (цифирь). Так вот, авторизация с этим «неубиваемым» ключом отличалась только строкой наличия этого ключа в этом списке, причем вида: key юзер@хост (цифирь) - т.е. без пути и названия файла ключа (!), что вроде бы логично, если он брался «из памяти».
Вот собственно и всё. После «лечения» этой строки в списке нет и автоподстановки соотвественно тоже (что и требовалось).

sptim ()
Ответ на: комментарий от Chumka

>Automatically loading SSH Keys

The SSH agent automatically loads files in ~/.ssh which have corresponding *.pub paired files. Additional SSH keys can be manually loaded and managed via the ssh-add command.


Вот оказывается где «собака зарыта». :-)
Спасибо за наводку!

sptim ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.