SSH経由でパス( https://www.passwordstore.org )を使用するために、gpg-agent転送をセットアップしようとしています。
ローカルホストとリモートホストの両方のgpgバージョン2.2.9、手順に従ってインストール: https://Gist.github.com/vt0r/a2f8c0bcb1400131ff51
extra-socket /home/mickey/.gnupg/S.gpg-agent.remote
echo RELOADAGENT | gpg-connect-agent
gpg --export -a mickey > mickey.gpg
echo "test" | gpg2 --encrypt -r mickey > out.gpg
scp *.gpg REMOTE_Host:
ssh -R /run/user/1002/gnupg/S.gpg-agent:/home/mickey/.gnupg/S.gpg-agent.remote -o "StreamLocalBindUnlink=yes" REMOTE_Host
gpg --import mickey.gpg
gpg --edit-key mickey
trust 5 quit
gpg --decrypt -v out.gpg
gpg: public key is FED6243A3325C554
gpg: connection to agent is in restricted mode
gpg: using subkey FED6243A3325C554 instead of primary key 9E2ED69A02554504
gpg: using subkey FED6243A3325C554 instead of primary key 9E2ED69A02554504
gpg: encrypted with 2048-bit RSA key, ID FED6243A3325C554, created 2018-07-23
"mickey"
gpg: public key decryption failed: Inappropriate ioctl for device
gpg: decryption failed: No secret key
したがって、エージェントソケット転送は機能しています。Pinentryプログラムに問題があるようです。グーグルで私のために働いたものを見つけることができませんでした。
pinentry-program /usr/bin/pinentry-tty
をgpg-agent.confに追加しようとしました、新しいエラー:
gpg: public key decryption failed: Invalid IPC response
gpg: decryption failed: No secret key
これは、GPGがどこから入力を読み取るか混乱しているときに発生します。 tty(標準入力に接続されている端末)からの入力を探すように構成するだけで、問題が修正されます。
export GPG_TTY=$(tty)