升级到 Ubuntu 15.10 后 GPG-Agent / Enigmail 停止工作

升级到 Ubuntu 15.10 后 GPG-Agent / Enigmail 停止工作

今天是个好日子,

我刚刚使用软件更新程序升级到 Ubuntu 15.10。重启后我发现 Thunderbird(版本 38.3.0)中的 Enigmail(版本 1.2.8)停止工作。我无法签名或加密邮件。

当 Enigmail 使用 gpg (GnuPG) 1.4.18 时,按下发送按钮后立即出现以下错误窗口:

Send operation aborted.
Error - bad passphrase

我甚至没有看到输入密码的对话框。为了测试,我安装了 gpg (GnuPG) 2.0.28,重新安装了 Enigmail 并将其配置为使用 gpg2。在“首选项”->“基本设置”中调整设置时,出现以下错误:

Cannot connect to gpg-agent.
Maybe your system uses a specialized tool for passphrase handling
(e.g. gnome-keyring, seahorse-agent, KDE wallet manager, ...).
Unfortunately Enigmail cannot control the passphrase timeout for the tool you are using.
Therefore the respective timeout settings in Enigmail are disregarded.

当我尝试使用 gpg2 发送签名或加密的邮件时,我收到不同的错误消息:

Send operation aborted.
Key 0xXXXXXXXX not found or not valid.
The (sub-)key might have expired

这根本不是事实。密钥存在并且尚未过期。奇怪的是,Enigmail 密钥管理器确实正确显示了密钥。

根本问题似乎出在 gpg-agent (gpg-agent (GnuPG) 2.0.28) 上。检查代理是否正在运行:

> ps ax | grep gpg
6971 ?        Ss     0:00 gpg-agent --daemon

正在尝试连接:

> gpg-agent
gpg-agent: can't connect to the agent: IPC connect call failed

> sudo gpg-agent
gpg-agent: no gpg-agent running in this session

尝试签署文件:

> gpg -s test.txt
[user and key info]
can't connect to `/tmp/gpg-GBtHXS/S.gpg-agent': No such file or directory
gpg: can't connect to `/tmp/gpg-GBtHXS/S.gpg-agent': connect failed

TL;DR;

显然 gpg-agent 不再起作用。我的问题是:

  • 为什么 gpg-agent 不再工作了?
  • 如何修复此问题?

感谢大家的时间和见解。

软件版本汇总:

  • gpg(GnuPG)1.4.18
  • gpg(GnuPG)2.0.28
  • gpg-代理 (GnuPG) 2.0.28
  • Enigmail 1.2.8。
  • Thunderbird 38.3.0
  • Ubuntu 15.10 狡猾的狼人

答案1

我遇到了类似的问题并通过安装 pinentry-gnome3 解决了它(我使用的是 Gnome Shell,而不是 Unity):

sudo apt-get install pinentry-gnome3

答案2

我得到了它部分又可以工作了。对于任何感兴趣的人,以下是我所做的。

  • 删除了 Enigmail
  • 删除了 GPG2
  • 重启
  • 重新安装 GPG2
  • 重新安装并配置 Enigmail
  • 重启

加密现在与以前一样。但是,签名消息仍然失败并出现上述错误消息(密钥无效...)。

GPG 代理现在可以通过命令行按预期工作。Enigmail 仍然不提示我输入密码,并且仍然报告密钥丢失或无效。

编辑:改变答案,因为还为时过早

答案3

通过添加解决了该问题

use-agent

.gnupg/gpg.conf

安装后,gpg-agent 默认并未运行。

相关内容