середу, 12 березня 2008 р.

запоминалка gnupg-пароля, используем gpg-agent


Если Вы начали пользоваться любым софтом, работающим с gnupg, возможно вас вскоре начнёт раздражать его манера при каждой операции шифрования спрашивать у Вас пароль. Кроме надоедливости такого варианта, он ещё и довольно небезопасен, т.к пароль приходится вводить настолько часто, что иногда можно потерять внимание и ввести его не в то окно (например - в чат), или вообще - в окно, сформированное неким злодеем для перехвата пароля.

Чтобы упростить себе жизнь, стоит пользоваться утилитой gpg-agent, которая идёт в составе пакета app-crypt/gnupg



Проблема в том, что по умолчанию в Gentoo gnupg-agent не пашет, его нужно слегка допилить напильником до рабочего состояния.

Раньше мой gpg-agent при запуске вываливася со следующим воплем:


gor@grog ~ $ gpg-agent
gpg-agent[17182]: can't connect to `/home/gor/.gnupg/S.gpg-agent': В соединении отказано
gpg-agent: нет gpg-agent доступого для данной сессии


чтобы такого не было, нужно запустить его со следующими ключами:


gor@grog ~ $ gpg-agent --daemon --use-standard-socket
GPG_AGENT_INFO=/home/gor/.gnupg/S.gpg-agent:22826:1; export GPG_AGENT_INFO;
gor@grog ~ $


Затем при следующей операции шифрования Вас разок должны спросить пароль и потом можно на время про него забыть. :)

Это время можно продлить, либо укоротить с помощью следующего ключа --default-cache-ttl секунды

Вот что о нём пишут в man gpg-agent:


--default-cache-ttl n
Set the time a cache entry is valid to n seconds. The default
are 600 seconds.



Красиво добавить его в bash_profile можно следующим образом:


#
# запоминалка паролей для GnuPG
#

if [ -z "$(ps -u gor | grep gpg-agent)" ]
then rm $HOME/.gnupg/S.gpg-agent
/usr/bin/gpg-agent --daemon --use-standard-socket > /dev/null
echo gpg-agent started
fi




Вобщем, всё должно работать ;)

Если всё-же есть проблемы - тогда отписывайтесь :)

Немає коментарів: