暗号化ソフトウェアをGnuPGに統合しようとしていますが、紛らわしい問題に直面しています。
私の主要なユニットはヘッドレスサーバーで、tmuxでのみ仕事をしています。Xセッションはありません。したがって、pinentry-cursesを使用するようにgpg-agentを構成しました。このスクリプトを使用して、ログイン時にssh-agentエミュレーションで呼び出されるようにgpg-agentを構成しました。
if pgrep -u "${USER}" gpg-agent >/dev/null 2>&1; then
eval `cat $gnupginf`
eval `cut -d= -f1 $gnupginf | xargs echo export`
else
eval `gpg-agent -s --enable-ssh-support --daemon`
fi
すでにsshキーをgpg-agentに追加しましたが、別のsshセッションを試行するとコマンドがハングします。
gpg-agentを終了して新しいログインシェルを作成すると、エージェントが正常に動作することを発見しました(pinentry-cursesを呼び出してからssh-agentのように動作します)。
ただし、別のログインシェルを作成して(たとえば、別のtmuxペインを開いて)sshを試みると、コマンドがハングし、最初にエージェントを起動したログインシェルのコンテンツ上にpinentry-cursesウィンドウが印刷されます。
さらに、最初にエージェントを起動したシェルを閉じた場合、pinentry-cursesが呼び出され、CPUをクリンプする無限ループが発生します。(既知のバグ、http://bugs.debian.org/cgi-bin/bugreport.cgi? bug = 559936を参照してください。)
本質的に、GnuPGエージェントがssh-agentと同じようにシームレスに動作するように、セットアップの変更点を知りたいと思います。助けてくれてありがとう!