web-dev-qa-db-ja.com

Enigmailはgpg-agentと通信できません

更新

Ubuntu 16.04の時点で、プラグインは期待どおりに機能し、ダウングレードする必要はありません受け入れられた回答で提案されています。この質問はUbuntu 15.04およびmaybe、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が正常に動作しない原因となるシステムセットアップまたは構成エラーであり、自動的に修正することはできません。

サポートWebサイト https://enigmail.net/faq を参照することを強くお勧めします。

FAQページを参照していくつかのことを試しましたが、まだ問題を解決できていません。

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と通信しますseems

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が起動したときにのみ表示されます。

さらに、Gnome StartupApplicationsパネルにスタートアップアプリケーションとして/usr/bin/gpg-agent --daemonコマンドを追加しましたが、違いはありませんでした。

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 + Enigmail1.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
10
code_dredd

thisthatotherの回答 はDebianシステムでそれを解決する方法を示しているだけですが、アプローチは同じです:

ダウングレード。

Enigmailが2月23日にバージョン1.9をリリースし、問題がその日から始まったため、解決策は次の3つだけです。

  1. Enigmailが物事を整理して1.9.xにアップデートをインストールするのを待ち、アップデートが提供されるまで暗号化の使用を停止します
  2. 自分で問題を掘り下げて解決します(基盤となるソフトウェアアーキテクチャに関する知識が限られているため、誰もができるわけではありません)
  3. 1.8.2にダウングレードしてから、Enigmailが問題を解決するのを待ち、1.9で発生したエラーを解決する1.9.xにアップグレードします。

私は1か2を手伝うことはできませんが、3の問題は解決できません:

  • Enigmail 1.8.2をダウンロード 、これはエラーを発生させなかった最新の1.9より前のバージョンです
  • ThunderbirdアドオンメニューからEnigmail1.9をアンインストールします
  • 同じメニュー内から、検索テキスト入力フィールドの左側にあるThunderbirdアドオンページの上部にある アドオン構成ボタン をクリックして、ダウンロードした1.8.2ファイルを手動でインストールします。
  • Thunderbirdを再起動します

これで、Enigmail 1.9への更新前と同様に動作するはずです。

1.9で導入されたこのバグが解決されるまで、Enigmailの自動更新を無効にすることをお勧めします。 ThunderbirdアドオンページのEnigmail拡張機能の説明テキストにある「詳細」リンクをクリックして、それらを無効にすることができます。

5
Bran

この問題について皆の詳細な入力をありがとうございました。

2月25日にシステムをEnigmail 1.9に更新してから、同様の問題が発生しました。Enigmail1.9をアンインストールして1.8に切り替えることで問題を修正しました。

私にとって、これは簡単でした。Debian8を使用し、Enigmailをスタンドアロンのアドオンとしてアンインストールし、debianメインリポジトリのEnigmailのレンディションに置き換えただけです(一部の調査によると、たまたま バージョン1.8.2 )。肩をすくめる。その変更以来、問題はありませんでした。それが他の人に役立つことを願っています。問題を解決するために正しい軌道に乗ってくれてありがとう。

5
thisthatother

Enigmailプラグインをダウングレードする必要はありません:

  • リストアイテム
  • Ubuntu 16.04
  • Thunderbird 45.2.0
  • Enigmail 1.9.5
  • gpg(GnuPG)1.4.20

ターミナルで:

killall gpg-agent
export GPG_TTY=$(tty)
gpg-agent --daemon /bin/bash

(--use-standard-socketは廃止されました)

Thunderbirdを再起動する必要はありません。

2
0xFAb

Enigmailが何ヶ​​月も働いた後、すべての操作で突然このエラーメッセージをスローしたという意味で同じ問題がありました。 GNOMEキーリングのGPGパスワードエージェントコンポーネントを無効にすると、この問題が解決しました–Enigmailは「オリジナル」を使用しますgpg-agent(GNOMEキーリングパスフレーズプロンプトの代わりに)ピンエントリプログラムを使用すると、すべてが問題なく機能します。

デフォルトのUbuntu「スタートアップアプリケーション」プログラムを使用して、GNOMEキーリングGPGパスワードコンポーネントを無効にしました。

Disabling GPG Password Agent (from GNOME Keyring) using “Startup Applications”

GNOMEキーリングを無効にしようとし、GNOMEShellを使用しているとのことです。おそらくそれは正しく機能しませんでしたか?私が持っているのと同じ手順(スタートアップアプリケーション/ Unity)を使用してみて、それが何か変化するかどうかを確認できます。

この問題は、Enigmailの最近のアップデート(バージョン1.9は2016年2月23日にリリースされました)が原因であると思われます。以前は、このエラーを生成せずにGNOMEキーリングで使用できました。 GNOMEキーリングを無効にすると問題(およびタイミング)が解決するという事実は、 Enigmailバグ#575 が関連していることを示唆しています。

1
Socob