Tôi đang tìm cách lưu cụm mật khẩu để sử dụng trên một máy không giám sát. Khi thực hiện điều này có một số rủi ro, tôi muốn chọn cụm mật khẩu nào được lưu trong bộ nhớ cache và tránh đặt cả hai default-cache-ttl
và max-cache-ttl
các giá trị cao đáng ghét cũng như tránh phải xóa gpg-agent
toàn bộ bộ đệm theo định kỳ - do đó tôi đang tìm giải pháp gpg-preset-passphrase
. Một số thông tin tôi tìm thấy trong khi khắc phục sự cố đề cập đến các phiên bản cũ hơn của GnuPG vì vậy tôi không chắc mình có đủ tài khoản cho tất cả các khác biệt hay không.
Đầu tiên, theo quy định man 1 gpg-agent
, tôi có export GPG_TTY=$(tty)
trong .bashrc của mình.
Bây giờ, giả sử tôi chạy eval $(gpg-agent --daemon --allow-preset-passphrase --default-cache-ttl 1 --max-cache-ttl 31536000)
để bắt đầu gpg-agent, lưu ý rằng gpg-preset-passph khẩu vẫn vinh danh --max-cache-ttl (mặc định 2 giờ).
Sau đó tôi nhận được keygrip $KEYGRIP
của khóa con bí mật mong muốn với gpg --with-keygrip -K
.
Với điều đó tôi cố gắng /path/to/gpg-preset-passphrase -c $KEYGRIP
. Khi quay trở lại, bản in này:
gpg-preset-passphrase: caching passphrase failed: Not implemented
Cố gắng một lần nữa thêm --verbose --debug 6 --log-file /path/to/gpg-agent.log
vào gpg-agent
, đăng nhập của tôi được nối với
gpg-agent[4206] listening on socket /run/user/1000/gnupg/S.gpg-agent
gpg-agent[4207] gpg-agent (GnuPG) 2.1.15 started
gpg-agent[4207] handler 0x7f86ef783700 for fd 5 started
gpg-agent[4207] command PRESET_PASSPHRASE failed: Not implemented
gpg-agent[4207] handler 0x7f86ef783700 for fd 5 terminated
Tôi không chắc chắn nên tiến hành từ đâu ngoài việc lặn sâu hơn vào nguồn, vì vậy tôi tự hỏi liệu trước tiên có ai có thể sửa các bước tôi đang thực hiện không.
gpg-preset-passphrase
, dẫn đầu cụ thể đầu tiên của tôi về điều đó là từ danh sách gửi thư này.gnupg.org/pipermail/gnupg