gpg-agent의 비밀번호 캐시를 15초로 설정하고 싶습니다. 내가 한 일은 다음과 같습니다.
내 두 구성 파일과 해당 내용은 다음과 같습니다.
/home/xixor/.gnupg/gpg.conf - gpg에게 gpg-agent를 사용하도록 지시합니다:
use-agent
/home/xixor/.gnupg/gpg-agent.conf - gpg-agent에 gpg 키 잠금 해제를 위한 비밀번호를 15초 동안 캐시하고 pinentry 프로그램을 사용하여 비밀번호를 입력하도록 지시합니다.
default-cache-ttl 15
max-cache-ttl 15
pinentry-program /usr/bin/pinentry
gpg-agent를 다시 로드하고 gpg-agent.conf에서 읽은 로그를 확인합니다.
echo RELOADAGENT | gpg-connect-agent
OK
Aug 08 20:35:23 opticon gpg-agent[35328]: SIGHUP received - re-reading configuration and flushing cache
Aug 08 20:35:23 opticon gpg-agent[35328]: reading options from '/home/xixor/.gnupg/gpg-agent.conf'
이 시점에서 올바른 15초 구성이 로드되었는지 다시 확인하세요.
gpgconf --list-options gpg-agent | awk -F: '$1=="default-cache-ttl" {print $10}'
15
gpgconf --list-options gpg-agent | awk -F: '$1=="max-cache-ttl" {print $10}'
15
이 시점에서 내 gpg 키를 잠금 해제해야 하는 프로그램을 호출할 수 있으며 예상대로 키 잠금을 해제하기 위해 pinentry를 사용하여 비밀번호를 묻는 메시지가 표시됩니다.
그런 다음 최소 15초를 기다렸다가 동일한 명령을 다시 실행하고 pinentry를 사용하여 다시 비밀번호를 요청할 것으로 예상하지만(15초 캐시가 만료되었으므로) 캐시 설정을 존중하지 않는다는 의미인 비밀번호 프롬프트가 없습니다. gpg-agent.conf에서. 기본 600초 캐시로 되돌아가는 것 같습니다.
GPG 액세스를 놓고 경쟁할 수 있는 다른 키체인 프로그램(예: gnome-keychain/seahorse/kwallet)이 설치되어 있지 않습니다.
내가 여기서 무엇을 놓치고 있는 걸까요?
답변1
몇 시간 동안 검색한 후에 사용자가 스마트 카드를 사용하여 gpg 키를 저장하는 경우 gpg-agent.conf의 gpg-agent 캐시 설정이 무시된다는 것을 발견했습니다.
내 경우에는 gpg 키를 yubikey에 저장하고 yubikey는 PIN으로 잠금 해제되며 PIN 캐시 설정은 gpg-agent.conf 설정을 재정의하는 pcscd 데몬에 의해 제어됩니다.