Как заставить GPG использовать консольный режим pinentry для запроса паролей?

Всякий раз, когда я пытаюсь использовать gpg из среды на основе консоли, такой как сеансы ssh, она терпит неудачу, потому что диалоговое окно pinentry GTK не может отображаться в сеансе SSH.

Я попытался unset DISPLAY но это не помогло. Параметры командной строки GPG не включают в себя переключатель для принудительной установки pinentry в консольный режим.

Старые версии GPG предложили текстовую подсказку, которая отлично работала на сеансах SSH, но после обновления она просто терпит неудачу.

Существует --textmode командной строки --textmode но он, похоже, не работает и, по-видимому, предназначен для выполнения чего-то еще, что еще более вводит в заблуждение.

Каким будет правильный и чистый способ получения ввода в виде обычного текста для удаленных сеансов?

3 Solutions collect form web for “Как заставить GPG использовать консольный режим pinentry для запроса паролей?”

Чтобы изменить булавку навсегда, добавьте следующее к вашему ~/.gnupg/gpg-agent.conf :

 pinentry-program /usr/bin/pinentry-tty 

(В более старых версиях, у которых отсутствует pinentry-tty, используйте pinentry-curses для диалогового окна «полный-терминал».)

Попросите агента GPG перезагрузить конфигурацию:

 gpg-connect-agent reloadagent /bye 

Чтобы предотвратить всплывающее окно pinentry, вы можете ssh localhost . При необходимости принудительно отключив X11, -x Disables X11 forwarding. См. Полный пример ниже.

 patrick@patrick-C504:~$ ssh localhost patrick@localhost's password: Welcome to Ubuntu 14.04.3 LTS (GNU/Linux 3.13.0-68-generic x86_64) * Documentation: https://help.ubuntu.com/ Last login: Mon Nov 16 22:48:53 2015 from localhost patrick@patrick-C504:~$ gpg --gen-key gpg (GnuPG) 1.4.16; Copyright (C) 2013 Free Software Foundation, Inc. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Please select what kind of key you want: (1) RSA and RSA (default) (2) DSA and Elgamal (3) DSA (sign only) (4) RSA (sign only) Your selection? 4 RSA keys may be between 1024 and 4096 bits long. What keysize do you want? (2048) Requested keysize is 2048 bits Please specify how long the key should be valid. 0 = key does not expire <n> = key expires in n days <n>w = key expires in n weeks <n>m = key expires in n months <n>y = key expires in n years Key is valid for? (0) Key does not expire at all Is this correct? (y/N) y You need a user ID to identify your key; the software constructs the user ID from the Real Name, Comment and Email Address in this form: "Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>" Real name: Foo Name must be at least 5 characters long Real name: FooBar Email address: foorbar@foo.bar Comment: You selected this USER-ID: "FooBar <foorbar@foo.bar>" Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? o You need a Passphrase to protect your secret key. gpg: gpg-agent is not available in this session Enter passphrase: 

Я нашел «полный пример» в ответе PvdL немного запутанным, вот что я делаю:

 ssh -X machine # work hack hack work until I need something from gpg ssh -x localhost -p$port gpg2 --decrypt file.gpg # enter password to pinentry exit # now the key is unlocked in gpg-agent, and I can keep decrypting files # from my X ssh session without being asked for the password 
  • Можно ли добавить шифр для клиента sftp?
  • Как заставить git работать с pagent (putty) в Windows?
  • Неизвестный процесс linux со случайной командой
  • Существует ли средство шифрования томов системы Windows 7, позволяющее удаленную разблокировку через ssh во время фазы загрузки?
  • Запустите приложение GUI на удаленном компьютере с SSH
  • Установление соединения SSH между машинами за брандмауэрами
  • Как я могу создать пользователя с доступом только для чтения ко всем файлам? (Т.е. root без разрешения на запись)
  • Переключаемые ключи GPG и SSH?
  • Как заставить sshfs работать в Debian? (Я получаю / dev / fuse: разрешение отклонено)
  • Можно ли заставить SSH передавать пустые аргументы?
  • Ssh 2 разных компьютера за одним маршрутизатором и модемом?
  • Interesting Posts

    Как определить, является ли диск жестким диском или SSD в Windows 8?

    Слишком много текста для ячейки Excel – как сделать прокручиваемую ячейку

    Ошибка получения родительского элемента для элемента: ресурс не найден, который соответствует указанному имени после обновления до AppCompat v23

    Java regex для извлечения текста между тегами

    Могу ли я получить доступ к состоянию сеанса из HTTPModule?

    Как разбить фрейм данных на dataframes с одинаковыми значениями столбцов?

    Что делать, если окно больше разрешения экрана?

    Как ограничить модификацию данных Firebase?

    Как опубликовать приложение GitHub для удаленных пользователей Windows Server 2012?

    Максимизированные окна не мотивируются при подключении внешнего монитора

    Как установить заголовок «Принять:» в запросе Spring RestTemplate?

    Обнаружить режим совместимости IE8

    Как мы обмениваемся файлами с Mac на Windows?

    Как узнать, какой пакет принадлежит файлу?

    Фильтры Django – или?

    Давайте будем гением компьютера.