Есть файл ~/.ssh/id_rsa (соответствующий публичный ключ тоже). Как только я создал эти файлы при графическом входе в систему в моем KDesktop 7.0.5 у меня запрашивают пароль от KWallet и пароль от закрытого ключа с помощью ksshaskpass.
Благодаря этому (что есть ssh-agent и в него добавляются ключ, который я создал) мой FileZilla успешно заходит на внешние серверы по сертификату с запароленным закрытым ключом.
Следующий этап - вход на внешний сервер по ssh. Для этого запускаю эмулятор терминала Konsole и в нем пишу:
$ ssh example.com
Agent admitted failure to sign using the key.
ssh: Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
ssh -vvv показывает, что (отпечатки я заменил, они были
одинаковые):
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /home/kiav/.ssh/id_rsa
debug3: send_pubkey_test
debug2: we sent a publickey packet, wait for reply
debug1: Server accepts key: pkalg ssh-rsa blen 148
debug2: input_userauth_pk_ok: fp 32:cc:c8:61:ec:54:c5:40:8e:cc:de:1a:36:28:4e:42
debug3: sign_and_send_pubkey: RSA 32:cc:c8:61:ec:54:c5:40:8e:cc:de:1a:36:28:4e:42
Agent admitted failure to sign using the key.
Т.е. вроде как ключ принят, но авторизации нет, агент отказал.
Ищу в инет. Вижу
статью по Ubuntu. Отключаю использование агента вообще:
SSH_AUTH_SOCK=0 ssh example.com
И вот теперь вход на внешний сервер проходит успешно, у меня запрашивается пароль к закрытому ключу прямо в Konsole.
Вообще, это решение по обходу агента меня устраивает. Мне все равно делать алиасы bash, чтобы не колотить для каждого сервера полные доменные имена и имена пользователей. Вопрос сейчас в том так должно быть в принципе или я что-то не доделал и агент с ssh из Konsole мог работать?
На всякий случай я провел эксперимент в консольном входе (без X). Там агент не запущен. Запуск не решает ничего, т.к. ssh-add рассчитывает на то, что ssh-agent будет его родителем. Да и не нужен мне такой вариант работы, я действую всегда из X.