Настроив доступ на сервер через ssh по публичному ключу - столкнулся с такой фичей (или багой может быть):Предыстория:
1. На клиенте создал RSA ключ ssh-keygen в ~/.ssh с именем хост_юзер_rsa (обращаю внимание на место! а так же на имя - совсем не дефолтное), без парольной фразы - для тестов.
2. На серваке, понятное дело, внёс соответствующему пользователю публичный ключ клиента в ~/.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