Как разрешить Makefile использовать gpg без пароля?

#security #scripting #gnupg #pgp

#Безопасность #сценарии #gnupg #pgp

Вопрос:

У меня есть Makefile, который вызывает gpg для расшифровки текстовых файлов, прежде чем открывать их в текстовом редакторе для редактирования. Поскольку я делаю это часто, я хотел бы сэкономить время при каждом вводе пароля, как я могу настроить gpg так, чтобы она помнила, что я недавно прошел проверку пароля? Например, заставьте меня вводить пароль, только если я не делал этого в течение последних 30 минут.

Спасибо!

Ответ №1:

Я думаю, что есть два способа сделать это:

  • разрешите gpg прочитать кодовую фразу из файла, используя опцию --passphrase-file (но на странице руководства gpg не рекомендуется использовать эту опцию, если вы можете избежать этого! И я думаю, вы можете избежать этого следующим образом …);

  • используйте gpg-agent для кэширования ключевой фразы. Если сценарий оболочки требует, чтобы вы каждый раз вводили кодовую фразу, скорее всего, агент не запущен. Если запущен gpg-агент, env | grep GPG должен выдавать некоторый вывод, подобный GPG_AGENT_INFO=/tmp/gpg-6YivG1/S.gpg-agent:10479:1 . Если не установлена переменная GPG_AGENT_INFO, возможно, вам придется запустить gpg-agent вручную или (предпочтительнее) настроить вашу систему на автоматический запуск gpg-agent. Как это сделать, зависит от вашего дистрибутива. В руководстве по GnuPG есть некоторая информация об этом.