Я только что обновил свою систему Ubuntu с 15.10 до 16.04, полностью удалив раздел Ubuntu 15 из моей системы.
После установки Ubuntu 16.04 я воссоздал свои ssh-ключи, так как забыл создать их резервную копию, но всякий раз, когда я пытаюсь использовать ssh, я получаю sign_and_send_pubkey: signing failed: agent refused operation это немного раздражает, поскольку позволяет мне подключиться к моему ssh-серверу, но git отказывается передавать код с помощью ssh.
Я уже отправил ключи на сервер с помощью ssh-copy-id.
Сервер, к которому я подключаюсь, - это сервер Ubuntu 16.04, обновленный с помощью do-release-upgrade команда. Любая помощь будет очень признательна.
Выглядит как ssh-agent уже запущен, но он не может найти никаких прикрепленных ключей. Чтобы решить эту проблему, добавьте идентификаторы закрытого ключа в агент аутентификации следующим образом:
ssh-add
Тогда вы сможете ssh на ваш сервер.
кроме того, вы можете просмотреть список отпечатков пальцев всех удостоверений личности, добавленных в настоящее время:
В случае, если ему удастся подключиться. Откройте приложение запуска приложения (например, с помощью функции поиска на рабочем столе) и отключите использование gnome-keyring.
Перезагрузить
На странице приведены другие подробности в случае аналогичной проблемы с другим решением.
Я получал sign_and_send_pubkey: signing failed: agent refused operation при входе на несколько серверов и чтении Ответ VonC на переполнение стека для получения дополнительной информации о связанных ошибках. Решение для меня состояло в том, чтобы удалить gnome-keyring, удалить идентификационные данные из ssh-agent, и перезагрузитесь.
sudo apt-get autoremove gnome-keyringssh-add -D
Затем все мои ключи начали работать идеально.
Временное решение без удаления связки ключей
Если вы хотите сохранить gnome-keyring на локальном компьютере, и у вас есть agent refused operation ошибка, используйте:
eval `ssh-agent -s`ssh-add
или использовать SSH_AUTH_SOCK=0 ssh your-server.
Постоянное решение без удаления брелка для ключей
Если ты сможешь, gnome-keyring совместим с 4096-битным ключом RSA, поэтому просто сгенерируйте новый ключ с помощью:
После обновления до Ubuntu 18.04 я получил ту же ошибку sign_and_send_pubkey: signing failed: agent refused operation. Оказывается, это было вызвано тем, что разрешения ssh-ключа были слишком открыты.Следующая команда устранила проблему для меняchmod 600 .ssh/id_rsa
Это случилось со мной, потому что в моем личном ключе была кодовая фраза. Пришлось бежать ssh-add а затем он запросил пароль и добавил его правильно. Однако теперь он не запрашивает мою парольную фразу при подключении к компьютеру по ssh.
У меня есть свежая установка Ubuntu16.04, и я столкнулся с аналогичными проблемами. Когда я попытался клонировать свой репозиторий из Github после того, как я скопировал свой открытый ключ в github (согласно инструкции по github.com) и после проведения следующей проверки (рекомендуется на github.com):