Короткий ответ :
Выполнить с правами root:
$ echo enable-ssh-support >> ~/.gnupg/gpg-agent.conf # editor /etc/X11/Xsession.options ... comment out "use-ssh-agent" ... # aptitude purge libpam-gnome-keyring
Выйдите из сеанса рабочего стола и войдите снова, и убедитесь, что $ SSH_AUTH_SOCK указывает на вашего gpg-агента.
Пояснение:
По умолчанию gpg-agent не включает свой агент SSH. Это делается либо передачей --enable-ssh-support
командной строки, либо добавлением строки в файл конфигурации, как указано выше.
Во-вторых, проблема других агентов SSH. Агент OpenSSH запускается по умолчанию, настраивается /etc/X11/Xsession.d/90x11-common_ssh-agent
из пакета x11-common. Если работает GNOME, агент GNOME Keyring также работает. Оба они будут мешать нашему агенту GnuPG.
Отключение агента OpenSSH осуществляется путем редактирования, /etc/X11/Xsession.options
как указано выше.
Отключение агента ключей GNOME потенциально немного сложнее. Используя Xfce, можно удалить пакет libpam-gnome-keyring и убедиться, что Xfce не запускает службы GNOME (« Настройки» → «Сеанс и запуск» → «Дополнительно» → «Запустить службы GNOME» при запуске - снимите флажок, если отмечен галочкой).
Поиск проблемы
Если после всего этого SSH_AUTH_SOCK все еще не указывает на вашего gpg-агента, у вас может быть другой агент, все еще мешающий вашему агенту GnuPG. Переменная SSH_AGENT_PID должна содержать PID процесса агента, который поможет точно определить этого агента.
Источник: My Perfect GnuPG / SSH Agent Setup