更新
Ubuntu 16.04以降、プラグインは期待どおりに動作し、承認された回答で提案されているようにダウングレードする必要はありません。この質問はUbuntu 15.04に当てはまり、おそらく 15.10にも当てはまります。
元の投稿
私は何年もThunderbird + Enigmailを使用しています。現在、Thunderbird 38.5.1、Enigmailバージョン1.9(20160223-1641)、およびGPG 2.0.26を仕事用PC(Ubuntu 15.04 64ビット、Gnome Shell付き)で使用しています。
数日前、1年以上の運用後、署名または暗号化されたメールを送信しようとすると、Enigmailが次のエラーで突然不平を言い始めました。
GnuPGがgpg-agent(GnuPGのコンポーネント)との通信でエラーを報告しました。
これはシステムセットアップまたは設定エラーであり、Enigmailが正常に機能しなくなり、自動的に修正できません。
https://enigmail.net/faqのサポートWebサイトを参照することを強くお勧めします 。
よくある質問のページを読み、いくつかのことを試しましたが、まだ問題を解決できていません。
pinentry
コマンドは正常に動作し、ショーpinentry-qt4
ウィンドウ(すなわちないテキストベース):
pinentry <<EOT
SETDESC Hello World
CONFIRM
EOT
ただし、gpg-agent-connect
コマンドは失敗します。
gpg-connect-agent <<EOT
heredoc> GETINFO version
heredoc> EOT
ERR 280 not implemented
提案されているようにgnomeキーリングを無効にしてみましたが、どちらも機能しません。(はい、その間にシステムを再起動しましたが、通常どおりキーリングを有効にしたままにしておきます。)また、Enigmail設定をエクスポートして再インポート(つまり$HOME/.gnupg/
、その間に別の名前に変更)を試みましたが、どちらも動作しません。
奇妙なことに、gpg-agent
シェルから手動で起動してからThunderbirdを起動すると、次のようにと通信しgpg-agent
ているようです。
gpg-agent --debug-level expert --use-standard-socket --daemon /bin/sh
gpg-agent[6469]: enabled debug flags: command cache assuan
gpg-agent[6469]: directory `/home/ray/.gnupg' created
gpg-agent[6469]: directory `/home/ray/.gnupg/private-keys-v1.d' created
gpg-agent[6469]: listening on socket `/home/ray/.gnupg/S.gpg-agent'
gpg-agent[6470]: gpg-agent (GnuPG) 2.0.26 started
#
# Thunderbird started at this point
#
$ gpg-agent[6470]: handler 0x558fd8c23cf0 for fd 7 started
gpg-agent[6470]: chan_7 -> OK Pleased to meet you, process 6470
gpg-agent[6470]: chan_6 <- OK Pleased to meet you, process 6470
gpg-agent[6470]: chan_6 -> GETINFO pid
gpg-agent[6470]: chan_7 <- GETINFO pid
gpg-agent[6470]: chan_7 -> D 6470
gpg-agent[6470]: chan_7 -> OK
gpg-agent[6470]: chan_6 <- D 6470
gpg-agent[6470]: chan_6 <- OK
gpg-agent[6470]: chan_6 -> BYE
gpg-agent[6470]: chan_7 <- BYE
gpg-agent[6470]: chan_7 -> OK closing connection
gpg-agent[6470]: handler 0x558fd8c23cf0 for fd 7 terminated
署名されたメールや暗号化されたメールを送信しようとしても、何も出力されません。これは、Thunderbirdが起動したときにのみ表示されます。
さらに/usr/bin/gpg-agent --daemon
、Gnome Startup Applicationsパネルでコマンドをスタートアップアプリケーションとして追加しましたが、違いはありませんでした。
2/23頃に定期的なアップデートを適用したと思いますが、今週2/24にシステムを再起動するまで問題は明らかになりませんでした。残念ながら、どのパッケージが更新されたか覚えていませんが、それほど多くはありませんでした。(私は通常、システムを更新し続けます。)
これは約2日前まで、何年もの間問題なく機能していたことに注意してください。(私はこのセットアップを自宅のデスクトップPCで4年間以上問題なく使用してきましたが、私の仕事用PCはラップトップであり、Ubuntuは未知の理由でそこでうまく機能しないことがあります...)
私は私が受け取った暗号化された電子メール(またはも暗号化されて保存されたドラフトを、)開こうとすると、私は約同じエラーメッセージが表示されますgpg-agent
が、それは私の秘密鍵のパスフレーズのための私を求めた後、電子メールメッセージ解読ありません。
Q: 署名/暗号化されたメールを送信できないこの通信エラーを解決するにはどうすればよいですか?
修正された問題を検討するには、エラーメッセージなどが表示されずに通常の状態に戻る必要があります。
この問題を解決するために提供できるヘルプについて、事前に感謝します。
この投稿を書いているときgpg-agent
に、ターミナルのデーモンからの次のメッセージに気付きました。
# ...from previous output above
gpg-agent[6470]: chan_7 -> OK closing connection
gpg-agent[6470]: handler 0x558fd8c23cf0 for fd 7 terminated
#
# new/unexpected error message from agent
#
gpg-agent[6470]: can't connect my own socket: IPC connect call failed
gpg-agent[6470]: this process is useless - shutting down
gpg-agent[6470]: gpg-agent (GnuPG) 2.0.26 stopped
その間、Thunderbirdに特に何もするように依頼しなかったので、これは予期せず現れました。
15.04-> 15.10-> 16.04から更新し、Thunderbird 38.6 + Enigmail 1.9.1が正常に動作していることを確認できました。コマンドの出力は、本来あるべき姿でもあります。
➜ ~ pinentry <<EOT
heredoc> SETDESC Hello World
heredoc> CONFIRM
heredoc> EOT
OK Pleased to meet you
OK
OK
➜ ~ gpg-connect-agent <<EOT
heredoc> GETINFO version
heredoc> EOT
D 2.1.11
OK
ERROR check_hijack
実際に放出されているかどうかをどこで確認しますか?FAQは古くなって表示され、Enigmailのデバッグログを表示するオプションがどこにあるのかわかりません。
Enigmail > Debugging Options > View Log
明らかにするWARNING: The GNOME keyring manager hijacked the GnuPG agent
。したがって、GnomeKeyringが関連していると確信しています。echo | gpg2 --sign
CLIで問題を明らかにします。(唯一の回避策として)悲しいことにgnome-keyringを無効にすることは私にとって選択肢ではありません。