Enigmail kann nicht mit gpg-agent kommunizieren

10

Aktualisieren

Ab Ubuntu 16.04 funktioniert das Plug-In wie erwartet und es ist kein Downgrade erforderlich, wie in der akzeptierten Antwort vorgeschlagen. Die Frage galt für Ubuntu 15.04 und möglicherweise für 15.10.


Ursprünglicher Beitrag

Ich benutze Thunderbird + Enigmail seit Jahren. Ich verwende derzeit Thunderbird 38.5.1, Enigmail Version 1.9 (20160223-1641) und GPG 2.0.26 auf meinem Arbeits-PC (Ubuntu 15.04 64-Bit, mit Gnome Shell).

Vor einigen Tagen, nach mehr als einem Jahr Betrieb, begann Enigmail plötzlich, sich über den folgenden Fehler zu beschweren, wenn ich versuche, eine signierte oder verschlüsselte E-Mail zu senden:

GnuPG hat einen Fehler in der Kommunikation mit gpg-agent (eine Komponente von GnuPG) gemeldet.

Dies ist ein System-Setup- oder Konfigurationsfehler, der die ordnungsgemäße Funktion von Enigmail verhindert und nicht automatisch behoben werden kann.

Wir empfehlen Ihnen dringend, unsere Support-Website unter https://enigmail.net/faq zu besuchen .

Ich habe die FAQ-Seite durchgesehen und verschiedene Dinge ausprobiert, konnte das Problem jedoch noch nicht beheben.

Der pinentryBefehl funktioniert einwandfrei und zeigt das pinentry-qt4Fenster (dh nicht textbasiert):

pinentry <<EOT
SETDESC Hello World
CONFIRM
EOT

Der gpg-agent-connectBefehl schlägt jedoch fehl:

gpg-connect-agent <<EOT
heredoc> GETINFO version
heredoc> EOT
ERR 280 not implemented

Ich habe versucht, den Gnome-Schlüsselring wie vorgeschlagen zu deaktivieren, aber es funktioniert auch nicht. (Ja, ich habe das System zwischendurch neu gestartet, aber ich möchte auch den Schlüsselbund wie gewohnt aktiviert lassen.) Ich habe auch versucht, meine Enigmail-Einstellungen zu exportieren und erneut zu importieren (dh $HOME/.gnupg/in der Zwischenzeit in etwas anderes umzubenennen), aber das tat es funktioniert auch nicht.

Seltsamerweise scheintgpg-agent es , wenn ich das manuell von der Shell aus starte und dann Thunderbird starte, mit dem zu kommunizieren , wie unten gezeigt: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

Ich sehe jedoch keine Ausgabe, wenn ich versuche, eine signierte und / oder verschlüsselte E-Mail zu senden. Dies wird nur angezeigt, wenn Thunderbird gestartet wird.

Außerdem habe ich den /usr/bin/gpg-agent --daemonBefehl als Startanwendung im Bereich "Gnome-Startanwendungen" hinzugefügt , aber es machte keinen Unterschied.

Ich glaube, ich habe gegen 2/23 ein regelmäßiges Update angewendet, aber das Problem wurde erst sichtbar, als das System diese Woche am 24.02 neu gestartet wurde. Leider kann ich mich nicht erinnern, welche Pakete aktualisiert wurden, aber es gab nicht so viele. (Normalerweise halte ich das System auf dem neuesten Stand.)

Bitte beachten Sie, dass dies seit Jahren oder so funktioniert hat, bis vor ungefähr 2 Tagen. (Ich habe dieses Setup auch in meinem Heim-Desktop-PC seit 4 Jahren + ohne Probleme verwendet, aber mein Arbeits-PC ist ein Laptop, und Ubuntu funktioniert dort aus unbekannten Gründen manchmal nicht so gut ...)

Wenn ich versuche, verschlüsselte E-Mails zu öffnen, die ich erhalten habe (oder Entwürfe gespeichert habe, die ebenfalls verschlüsselt sind), wird dieselbe Fehlermeldung gpg-agentangezeigt, die E-Mail-Nachricht wird jedoch entschlüsselt, nachdem ich nach meiner Passphrase für den privaten Schlüssel gefragt wurde.

F: Wie kann ich diesen Kommunikationsfehler beheben, der mich daran hindert, signierte / verschlüsselte E-Mails zu senden?

Um das Problem als behoben zu betrachten, muss die Situation ohne Fehlermeldungen usw. wieder normal funktionieren.

Vielen Dank im Voraus für jede Hilfe, die Sie zur Behebung dieses Problems leisten können.


Während ich diesen Beitrag schrieb, bemerkte ich die folgende Nachricht vom gpg-agentDaemon im Terminal:

# ...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

Dies zeigte sich unerwartet, da ich Thunderbird in der Zwischenzeit nicht gebeten habe, etwas Besonderes zu tun.


Ich habe von 15.04 -> 15.10 -> 16.04 aktualisiert und kann bestätigen, dass Thunderbird 38.6 + Enigmail 1.9.1 für mich normal funktioniert. Die Ausgabe der Befehle ist auch so, wie sie sein sollten:

➜  ~ 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
code_dredd
quelle
Vielleicht verwandt: sourceforge.net/p/enigmail/bugs/575
Socob
@Socob: Wo würdest du prüfen, ob ERROR check_hijacktatsächlich gesendet wird? Die FAQ ist veraltet und ich bin mir nicht sicher, wo die Option zum Anzeigen des Debug-Protokolls von Enigmail noch vorhanden ist.
Code_dredd
Leider bin ich mir nicht sicher, ich habe gerade den Bug-Tracker von Enigmail überprüft und das Problem ganz oben gesehen, was so klingt, als würde es zu diesem Problem führen. Abgesehen davon habe ich das gleiche Problem wie Sie (Enigmail gibt diese Fehlermeldung aus, nachdem ich sehr lange ohne Probleme gearbeitet habe). Ich werde versuchen, das loszuwerden, wenn ich Zeit habe.
Socob
@Socob: Hört sich gut an. Dies ist nicht das erste Mal, dass ich dieses Problem habe. Als ich zum ersten Mal auf dieses Problem stieß, war mein PC-Austauschdatum ziemlich nahe, sodass ich es ignorierte, nachdem ich mehrere Stunden damit verbracht hatte, es zu beheben. Diesmal kann ich es nicht ignorieren und habe wieder einige Stunden verbracht. Ich werde es von Zeit zu Zeit weiter versuchen. Ich hoffe, Sie haben mehr Glück als ich.
Code_dredd
1
Selbes Problem hier. Enigmail > Debugging Options > View Logenthüllt WARNING: The GNOME keyring manager hijacked the GnuPG agent. Ich bin mir also ziemlich sicher, dass GnomeKeyring verwandt ist. echo | gpg2 --signzeigt das Problem in der CLI. Leider ist das Deaktivieren des Gnome-Schlüsselbunds (als einzige Problemumgehung) für mich keine Option.
Meisterluk

Antworten:

5

Während die Antwort dieses anderen nur zeigt, wie man es auf einem Debian-System löst, ist der Ansatz der gleiche:

Herabstufung.

Seit Enigmail am 23. Februar Version 1.9 veröffentlicht hat und die Probleme von diesem Tag an begannen, sind die einzigen drei Lösungen:

  1. Warten Sie, bis Enigmail die Probleme gelöst und das Update auf 1.9.x installiert hat, und stellen Sie die Verschlüsselung ein, bis das Update bereitgestellt wird
  2. Stöbern Sie herum und lösen Sie das Problem selbst (was aufgrund der begrenzten Kenntnisse der zugrunde liegenden Softwarearchitektur nicht jeder kann)
  3. Führen Sie ein Downgrade auf 1.8.2 durch und warten Sie, bis Enigmail die Probleme gelöst und auf 1.9.x aktualisiert hat, um den bei 1.9 aufgetretenen Fehler zu beheben.

Ich kann nicht mit 1 oder 2 helfen, aber mit Nummer 3:

  • Laden Sie Enigmail 1.8.2 herunter , die neueste Version vor 1.9, bei der der Fehler nicht aufgetreten ist
  • Deinstallieren Sie Enigmail 1.9 über das Thunderbird Add-On-Menü
  • Installieren Sie die heruntergeladene 1.8.2-Datei in demselben Menü manuell, indem Sie oben auf der Seite Thunderbird-Add-Ons links im Eingabefeld für den Suchtext auf die Schaltfläche Add-Ons-Konfiguration klicken
  • Starten Sie Thunderbird neu

Es sollte jetzt wie vor dem Update auf Enigmail 1.9 funktionieren.

Ich würde vorschlagen, automatische Updates für Enigmail zu deaktivieren, bis dieser in 1.9 eingeführte Fehler behoben ist. Sie können sie deaktivieren, indem Sie auf den Link "Mehr" im Beschreibungstext der Enigmail-Erweiterung auf der Seite "Thunderbird-Add-Ons" klicken.

Kleie
quelle
Ich denke du meinst "Ich kann nicht mit 1 oder 2 helfen , aber mit Nummer 3 ".
Socob
1
@Bran: Beachten Sie, dass nach dem Wechsel der Enigmail-Versionen möglicherweise eine Fehlermeldung angezeigt wird, dass Ihr Schlüssel auch nach dem Neustart von Thunderbird nicht gefunden wurde oder "abgelaufen" ist. Ich musste meinen PC tatsächlich komplett neu starten, um das zu umgehen. Ob gut oder schlecht, dies scheint derzeit die einzige praktische Lösung zu sein. Anstatt ihre Software
Gnomschlüsselring
1
Aktuelle Nachricht:Enigmail Key ... not found or not valid. The (sub-)key might have expired.
code_dredd
Nun, da ein Fehlerbericht von einem der Betreuer sehr kurz nach der Veröffentlichung erstellt wurde, scheint dies keine absichtliche Änderung zu sein. Seltsamerweise wurde der fragliche Fehlerbericht jetzt gelöscht ...
Socob
Der Ansatz von @thisthatother funktioniert auch für Ubuntu, siehe packages.ubuntu.com/search?keywords=enigmail ... Ubuntu bietet Enigmail als Apckage mit Version 1.8.2 derzeit für alle Ubuntu-Versionen an.
Matthias
5

Vielen Dank für die detaillierten Beiträge aller zu diesem Thema.

Ich habe ein ähnliches Problem, seit mein System am 25. Februar auf Enigmail 1.9 aktualisiert wurde. Ich habe das Problem behoben, indem ich Enigmail 1.9 deinstalliert und auf 1.8 gewechselt habe.

Für mich war dies einfach, da ich Debian 8 verwende und Enigmail einfach als eigenständiges Addon deinstalliert und durch die Enigmail-Wiedergabe des Debian-Haupt-Repos ersetzt habe (die, wie einige Untersuchungen zeigen, Version 1.8.2 ist ). Zucken. Habe seit dieser Änderung keine Probleme gehabt. Ich hoffe, dass dies für andere nützlich ist, und nochmals vielen Dank, dass Sie mich auf den richtigen Weg zur Lösung des Problems gebracht haben.

das andere
quelle
Vielen Dank an frühere Poster für die detaillierten Informationen, die mir geholfen haben, eine Lösung für meinen speziellen Fall zu finden. Ich hoffe, es
klappt
Interessanter Fund. Ich verwende Debian jedoch nicht, und während eine Debian-spezifische Lösung möglicherweise nur für wenige funktioniert, ist eine allgemeinere Lösung vorzuziehen.
Code_dredd
1
Nun, das sollte auf jeden Fall funktionieren - man müsste nur eine ältere Version von Enigmail in die Hände bekommen (ich denke nicht, dass es Kompatibilitätsprobleme mit .xpi-Dateien geben sollte).
Socob
Diese Problemumgehung behebt das Problem auch für mich. Keine Probleme seitdem.
Matthias
2

Enigmail-Plugin muss nicht heruntergestuft werden:

  • Listenpunkt
  • Ubuntu 16.04
  • Thunderbird 45.2.0
  • Enigmail 1.9.5
  • gpg (GnuPG) 1.4.20

In einem Terminal:

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

(--use-standard-socket ist veraltet)

Thunderbird muss nicht neu gestartet werden.

0xFAb
quelle
Wahr. Ich hatte angegeben, dass kein Downgrade als Kommentar erforderlich ist, aber ich habe den Beitrag aktualisiert, um ihn sehr gut sichtbar zu machen.
Code_Dredd
1

Ich hatte das gleiche Problem in dem Sinne, dass Enigmail diese Fehlermeldung plötzlich bei jeder Operation ausgab, nachdem ich viele Monate gearbeitet hatte. Durch Deaktivieren der GPG Password Agent-Komponente von GNOME Keyring wurde dieses Problem für mich behoben. Enigmail verwendet dann das „Original“ gpg-agentmit einem Pinentry-Programm (anstelle der Passphrase-Eingabeaufforderung für GNOME Keyring) und alles funktioniert ohne Probleme.

Ich habe die GNOME Keyring GPG-Kennwortkomponente mit dem Standard-Ubuntu-Programm „Startup Applications“ deaktiviert:

Deaktivieren des GPG Password Agent (über den GNOME-Schlüsselring) mithilfe von "Startanwendungen"

Sie sagten, Sie hätten versucht, den GNOME-Schlüsselring zu deaktivieren, und Sie hätten die GNOME-Shell verwendet. Vielleicht hat das nicht richtig funktioniert? Sie können versuchen, die gleichen Schritte wie bei (Startup Applications / Unity) auszuführen und festzustellen, ob sich dadurch etwas ändert.

Es scheint, dass dieses Problem durch ein kürzlich durchgeführtes Update in Enigmail (Version 1.9 wurde am 23. Februar 2016 veröffentlicht) verursacht wurde, da es früher mit GNOME Keyring verwendet werden konnte, ohne diesen Fehler zu generieren. Die Tatsache, dass das Deaktivieren des GNOME-Schlüsselbunds das Problem (und das Timing) behebt, legt nahe, dass der Enigmail-Fehler Nr. 575 damit zusammenhängt.

Socob
quelle
Ich konnte mich gestern ein bisschen mehr damit beschäftigen. Ich habe festgestellt, dass die ERROR hijackNachricht im Protokoll angezeigt wird. Ich habe versucht, die gleiche Option zu deaktivieren, die Sie dort bereits hatten, aber das Problem ist, dass wenn ich das getan habe, es dann nie zum Sprechen kommt, gpg-agentweil die pinentryEingabeaufforderung für die Passphrase nie angezeigt wird (dh ich erhalte vorher eine andere Fehlermeldung zu jedem Kommunikationsversuch mit gpg-agent). Ich werde es noch einmal versuchen, wenn ich morgen wieder zur Arbeit komme.
code_dredd
Der Enigmail-Bug-Link ist defekt ...
xuhdev
@xuhdev Ja, der Fehler wurde kurz nach der Erstellung entfernt. Ich habe jedoch keine Ahnung warum.
Socob