Passphrase wird nicht mehr abgefragt

  • Um Rückfragen vorzubeugen, bitten wir um folgende Angaben:

    • Thunderbird-Version: 52.7.0 (64-Bit)
    • Betriebssystem + Version: Linux/Lubuntu 16.04.4 LTS, 64 bit
    • Kontenart (POP / IMAP): POP3
    • Postfachanbieter (z.B. GMX): gmx.de (u.a.)
    • PGP-Software / PGP-Version: gnupg2: 2.1.11-6ubuntu2
    • Eingesetzte Antivirensoftware: -
    • Firewall (Betriebssystem-intern/Externe Software): ufw


    Hier können Sie Ihren Text schreiben:


    Hallo zusammen,


    Seit einiger Zeit verhält sich die Entschlüsselung verschlüsselter e-mails anders als früher, obgleich ich keine Veränderungen in den

    Einstellungen vorgenommen habe.


    Sie werden nämlich sofort entschlüsselt, ohne vorher nach der Passphrase zu fragen.


    In den Eingmail-Einstellungen ist aber, nach wie vor, unter "Allgemein" folgendes eingetragen: Passphrase Ablaufzeit: 10 Minunten lang merken (bevor eine Neueingabe notwendig ist).


    Woran könnte das liegen und wie kann man die Abfrage wieder aktivieren?


    Vielen Dank im voraus.


    LG

    Rosika :|

  • Hi Solaris,


    vielen Dank für Deine Antwort und den Link.

    Ich habe mir die betreffende Seite durchgelesen und die Einträge in ~/.gnupg/gpg-agent.conf angesehen:


    Code
    default-cache-ttl 600
    max-cache-ttl 999999

    In der Erklärung heißt es ja:

    --default-cache-ttl n setzt die Zeit wie lange ein Passwort im Cache bleibt auf n Sekunden, Standard ist 600
    --max-cache-ttl n setzt die maximale Zeit wie lange ein Passwort im Cache bleibt auf n Sekunden, Standard ist 7200 (2 Stunden)

    Kann es sein, daß man da etwas ändern müßte? Und wenn ja, wie?

    In den Enigmail-Einstellungen ist ja bereits gesetzt: "Passphrase Ablaufzeit: 10 Minunten lang merken (bevor eine Neueingabe notwendig ist)".


    D.h.: "--default-cache-ttl n" würde ja stimmen mit dem Eintrag von 600 sec.

  • Ich bin mir nicht sicher, ob ich hier weiterhelfen kann. Unter Ubuntu und dessen Derivaten war die Passphrasenverwaltung schon in der Vergangenheit verwirrend, weil der Gnome-Keyring sich dazwischengedrängelt hat. Ich habe mir das nie im Detail angeschaut und kann deshalb nur wenig dazu mitteilen.


    In GnuPG 2.x ist der gpg-agent nach meinem Kenntnisstand zwingend erforderlich. Die Verwendung anderer Tools kann zu Fehlern führen. Ich weiß aber nicht, ob Lubuntu 16.04 immer noch versucht, die Verwaltung zu hijacken.

    Feststellen kann man das über das Kommando echo $GPG_AGENT_INFO

    Es sollte etwas in dieser Art anzeigen: /tmp/gpg-amlISF/S.gpg-agent:1998:1 also auf den gpg-agenten verweisen und nicht auf einen anderen Prozess.


    Noch kurz zur Erklärung der Cache-Werte ...

    default-cache-ttl gibt die Zeit an, für die die Passphrase gespeichert wird. Sie startet stets von vorn, wenn die Passphrase zwischendurch aus dem Cache benutzt wird. Allerdings nur so lange, bis die Zeit max-cache-ttl erreicht ist. Dann erfolgt die Abfrage auch, wenn der Cache zwischenzeitlich benutzt wurde.

    Es kann somit vorkommen, dass die Passphrase über den Wert von default-cache-ttl hinaus aus dem Cache genommen wird.


    Kann es sein, daß man da etwas ändern müßte? Und wenn ja, wie?

    Wie man Änderungen vornimmt steht in der oben verlinkten der Anleitung.


    Spätestens nach Erreichen von max-cache-ttl oder nach einem Neustart des Rechners (vielleicht auch nach einem Log Out/Log In) sollte die Passphrase erneut abgefragt werden. Sollte das nicht erfolgen, stimmt etwas nicht. In diesem Fall würde ich bei GnuPG oder bei Enigmail nachfragen.


    Durch die Eingabe von gpg-connect-agent reloadagent /bye sollte der Cache ebenfalls gelöscht werden.



  • Hi Solaris,


    vielen Dank für die Ausführungen.



    Quote

    In GnuPG 2.x ist der gpg-agent nach meinem Kenntnisstand zwingend erforderlich.

    Hab´ nachgesehen. Installiert sind sowohl gnupg-agent als auch pinentry-gtk2. Somit sollte alles korrekt sein.

    $GPG_AGENT_INFO gibt mir allerdings nicht aus.

    Auch

    Code
     gpg-connect-agent reloadagent /bye

    nutzt bei mir nichts. Der Befehl wird zwar ausgeführt, zeitigt aber keinen Effekt. Beim Aufrufen einer verschlüsselten e-mail wird diese wieder sofort und automatisch entschlüsselt.


    Quote

    In diesem Fall würde ich bei GnuPG oder bei Enigmail nachfragen.

    O.K., das werde ich dann mal versuchen.

    Vielen herzlichen Dank für all Deine Mühe.


    LG

    Rosika

  • Ich habe es gerade selbst unter Ubuntu 14.04 getestet. Auch bei mir wird die Passphrase nicht zuverlässig gelöscht. Weder über den erwähnten Reload noch über den Befehl aus dem Enigmail-Menü. Manchmal klappt es korrekt, manchmal nur für ein Konto, manchmal gar nicht. Eine tieferliegende Regelmäßigkeit konnte ich in der Kürze der Zeit nicht feststellen.

    Nach meiner Erinnerung hat der Befehl über den Menüpunkt in der Vergangenheit funktioniert. Zeit für jemanden, der sich damit besser auskennt als ich.

  • Hi Solaris,


    das ist sehr nett von Dir, daß Du Dir die Mühe gemacht hast, das alles selbst auszuprobieren. Vielen Dank.

    Nun sieht´s so aus, als ob´s nicht nur bei mir so ist. Etwas beruhigend.... ;)


    Deinen Vorschlag aufgreifend habe ich mich gerade für die enigmail-users mailing-list angemeldet. Ich trage mein Anliegen dort mal vor.

    Sobald ich Ergebnisse habe (falls überhaupt) poste ich sie hier.


    LG

    Rosika :)

  • Nun sieht´s so aus, als ob´s nicht nur bei mir so ist.

    Hier war ich vielleicht nicht präzise genug in meiner Formulierung. Was in meinen Tests nicht richtig funktionierte, das was das manuelle Löschen der Passphrase.

    Das eigentliche Problem hingegen tritt bei mir nicht auf. Nach Ablauf der eingestellten Haltezeit werde ich erneut zur Eingabe der Passphrase aufgefordert. Bei mir wird auch die Variable GPG_AGENT_INFO beim Systemstart gesetzt. Ich weiß nicht, welcher Prozess oder Demon dafür verantwortlich ist. Vielleicht der gpg-agent selbst, oder GnuPG beim ersten Aufruf.

  • Hi Solaris,


    aha, verstehe.

    Nun, gerade hab´ ich nochmals nachgesehen. Also definitiv wird bei mir die Variable GPG_AGENT_INFO nicht gesetzt. Keine Ahnung, warum.


    Mal eine ganz dumme Frage:


    Quote

    Was in meinen Tests nicht richtig funktionierte, das was das manuelle Löschen der Passphrase.

    Wie hast Du das versucht? Mit "gpg-connect-agent reloadagent /bye", oder gibt´s da noch einen anderen Weg? Das würde ich auch mal versuchen.

    Nur "gpg-connect-agent reloadagent /bye" bringt bei mir nichts.


    LG

    Rosika

  • Nach Ablauf der eingestellten Haltezeit werde ich erneut zur Eingabe der Passphrase aufgefordert.


    Hier muss ich mich korrigieren. Weitere Tests zeigen, dass die Speicherzeit für die Passphrase auch bei mir ignoriert wird. Dies sowohl unter Ubuntu wie auch unter Windows 10. Das war nicht immer der Fall und macht die Annahme eines Fehler in Enigmail durchaus möglich. Insofern ist es gut, dass das Problem auch dort gemeldet wurde.


    Wie hast Du das versucht?

    Wie erwähnt, über den Befehl aber auch über das Menü.

  • Hi Solaris,


    danke für die erneute Rückmeldung.


    Quote

    Durch die Eingabe von gpg-connect-agent reloadagent /bye sollte der Cache ebenfalls gelöscht werden.

    Ja, das bewirkt bei mir - wie gesagt - nichts. Aber das Löschen der Passphrase über das Menü? Das würde mich interessieren. Bei mir fehlt ein solcher Eintrag, wenn ich nicht ganz blind bin.

    Bei mir gibt´s unter Einstellungen noch den Button "Zurücksetzen". Meinst Du das vielleicht?


    In der Zwischenzeit hab ich eine Antwort aus der enigmail-users mailing-list bekommen:

    Quote

    Try restarting gpg-agent.

    Das allein bringt mich jetzt auch nicht weiter, denn den scheint´s bei mir gar nicht zu geben:

    Code
    systemctl status gpg-agent
    ● gpg-agent.service
    Loaded: not-found (Reason: No such file or directory)
    Active: inactive (dead)
    
    systemctl start gpg-agent.service
    Failed to start gpg-agent.service: Unit gpg-agent.service not found.

    gnupg-agent hingegen ist installiert!


    Die Ausgabe aber auch hier:

    Code
    systemctl status gnupg-agent
    ● gnupg-agent.service
    Loaded: not-found (Reason: No such file or directory)
    Active: inactive (dead)
    
    systemctl start gnupg-agent
    Failed to start gnupg-agent.service: Unit gnupg-agent.service not found.


    Irgendwie merkwürdig das Ganze, zumal ich nichts verändert habe und es früher wie gewünscht funktionierte.

    Aber da es bei Dir bei 2 verschiedenen Betriebssystemen ähnlich zugeht, schließe ich mich Deiner Meinung an, daß es irgendwie mit Einigmail selbst zu tun haben muß.


    LG

    Rosika

  • *****UPDATE*****


    Ich habe jetzt eine "Lösung" gefunden, d.h. eher ein workaround.


    Wie auf der Seite Enigmail - Enigmail-Menü beschreiben, setzt man in den Einigmail-Einstellungen unter "Allgemein": Experten-Optionen und -Menüs anzeigen.


    Dann wird im TB-Tab "Enigmail" die Option "Automatisch entschlüsseln/überprüfen" angezeigt. Wenn man dort das Häkchen rausmacht, werden die verschlüsselten e-mails tatsächlich nicht mehr automatisch entschlüsselt!

    Nach dem PW wird allerdings weiterhin nicht gefragt, sondern man muß im oben erwähnten Tab "Entschlüsseln/überprüfen" wählen.


    Also: nicht so wie früher, aber eben auch eine Lösung.


    Viele Grüße

    Rosika

  • Aber das Löschen der Passphrase über das Menü? Das würde mich interessieren.

    [tmdemenupath]Menü-Leiste[/tmdemenupath] [tmdemenupath]Einigmail[/tmdemenupath] [tmdemenupath]Gespeicherte Passphrase löschen[/tmdemenupath]


    In der Zwischenzeit hab ich eine Antwort aus der enigmail-users mailing-list bekommen:

    Das Neustarten des Agenten hatten wir schon mit meiner Empfehlung zu dem Reload-Kommando oben. Hilft bei mir auch nicht.


    gnupg-agent hingegen ist installiert!

    Das ist nur der Name des Pakets, in dem der gpg-agent enthalten ist. Siehe erneut https://wiki.ubuntuusers.de/GPG-Agent/


    Zu systemctl kann ich nichts sagen. Das gehört zu systemd. Ich bleibe noch für ein knappes Jahr auf 14.04. .

    Ob der Agent läuft kann man aber "klassisch" über ein

    Code
    ps -ef | grep agent


    feststellen. In meinem Fall läuft er. Leider erledigt er aus mir unbekanntem Grund seine Aufgabe nicht korrekt. Dass er grundsätzlich funktioniert, erkennt man daran, dass die Passphrase im Cache ist. Er scheint lediglich nicht auf die TTL zu reagieren.

    Die wird übrigens von Enigmail richtig eingetragen, wie man anhand der gpg-agent.conf überprüfen kann. Ich weiß zu wenig über das Zusammenspiel von Enigmail, dem gpg-agent und anderen Daemons, um zu beurteilen, welche der Komponenten ursächlich ist.


    Ich habe jetzt eine "Lösung" gefunden, d.h. eher ein workaround.

    Hier würde ich eher ausprobieren, durch Auskommentieren der Zeile use-agent in der gpg.conf ganz auf den gpg-agent verzichten. Dann sollte die Passphrase gar nicht mehr im Cache gehalten werden. Ich habe das selbst aber nicht ausprobiert.

  • Hi Solaris,

    Quote



    Menü-Leiste Einigmail Gespeicherte Passphrase löschen

    Danke. Jetzt weiß ich, warum der letzte Eintrag "Passphrase löschen" bei mir nicht angezeigt wurde.

    In den Enigmail-Einstellungen unter "Allgemein" war bei mir nicht "Experten-Optionen und -Menüs anzeigen" aktiviert. Das habe ich gemacht, und jetzt wird auch die entsprechende Auswahloption abgeboten.


    Das habe ich nun versucht, aber auch hier hat´s nichts gebracht.


    Ausgabe:


    Code
    ps -ef | grep agent
    rosika    5332  4407  0 12:17 ?        00:00:00 gpg-agent --homedir /home/rosika/.gnupg --use-standard-socket --daemon

    Der agent läuft bei mir anscheinend auch.

    Somit scheint alles wie auch bei Dir zu sein. Wie Du bereits sagtest, es wird wohl an enigmail selbst liegen.


    Quote

    Hier würde ich eher ausprobieren, durch Auskommentieren der Zeile use-agent in der gpg.conf ganz auf den gpg-agent verzichten. Dann sollte die Passphrase gar nicht mehr im Cache gehalten werden

    O.K., das habe ich noch nicht ausprobiert. Irgendwie getrau´ ich mich nicht so recht. Nicht, daß ich da noch etwas vemassel. :/


    Vielleicht auf eine neue Version von enigmail warten? Aber die haben ja gerade 2.0.5 bereitgestellt - ohne diesbezügliche Veränderungen....


    LG

    Rosika

  • Wie Du bereits sagtest, es wird wohl an enigmail selbst liegen.

    Das habe ich so nicht gesagt. Ich schrieb:


    Er scheint lediglich nicht auf die TTL zu reagieren.

    Die wird übrigens von Enigmail richtig eingetragen, wie man anhand der gpg-agent.conf überprüfen kann. Ich weiß zu wenig über das Zusammenspiel von Enigmail, dem gpg-agent und anderen Daemons, um zu beurteilen, welche der Komponenten ursächlich ist.

    Ich weiß nicht, wo der Fehler steckt. Für mich ist er auch nicht so schwerwiegend, weil ich die E-Mails entschlüsselt abspeichere. Deshalb habe ich mich damit auch bisher nicht tiefer auseinandergesetzt.

    Vielleicht auf eine neue Version von enigmail warten?

    Wenn der Fehler nicht in Enigmail liegt, wird das wenig helfen.


    Wir sind nicht die einzigen, die GnuPG/Enigmail verwenden. Vielleicht weiß von denen ja mehr dazu.

  • Hallo,

    Quote

    Das habe ich so nicht gesagt

    Sorry, da habe ich wohl zuviel hineininterpretiert.

    Ich bezog mich da eigentlich auf Deine Aussage:

    Quote

    Das war nicht immer der Fall und macht die Annahme eines Fehler in Enigmail durchaus möglich.

    (Beitrag #10). Daran hab´ ich wohl festgeklammert..... :)


    Auch für mich ist das jetzt nicht so von überragender Bedeutung. Mich hat nur dieses gegenüber früher veränderte Verhalten stutzig gemacht; deshalb wollte ich mal nachfragen.


    Vielen Dank auf jeden Fall für Deine Mühe. Zumindest habe ich dadurch wieder etwas dazugelernt.


    Grüsse

    Rosika

  • Schön wäre, wenn sich hier oder bei Enigmail jemand finden würde, der das Problem auflösen könnte.

  • Hallo,


    seit der gpg-agent (oder ein anderer agent oder daemon, der die Kontrolle an sich reißt) verwendet wird, haben die Einstellungen in Enigmail keine Wirkung mehr. "Passphrase löschen" funktioniert nicht, die eingestellte Ablaufzeit hat keine Wirkung.

    Bei mir (Ubuntu Mate 16.04) ist offenbar der keyring daemon zuständig (der sich wohl "dazwischengedrängelt hat") :

    Code
    ps -ef | grep -i keyring
    1334     1   0 19:02 ?        00:00:00 /usr/bin/gnome-keyring-daemon --daemonize --login


    Schießt man den ab, bekommt man wieder (einmalig) den Passphrase-Dialog. Der hat ein sehr einnehmendes Wesen (modaler Dialog), d.h. alle anderen Aktionen sind unmöglich, man kann nicht einmal einen Screenshot davon machen - außer mit einer Kamera.

    Ist die Passphrase irgendwo gespeichert?

    Sobald man den Fehler macht, dem Speichern der Passphrase "im Passwortmanager" zuzustimmen, kann man das schwer rückgängig machen. "Passwortmanager" läßt ja vermuten, daß es um den TB-Passwortmanager geht, was nicht der Fall ist.

    Die Einstellungen für Speicherdauer usw. scheinen jedenfalls beim keyring-daemon zu liegen. Die Oberfläche (Seahorse) gibt da aber nicht viel her.

    https://wiki.ubuntuusers.de/GNOME_Schl%C3%BCsselbund/

    Es scheint also der Normalfall zu sein, daß der Keyring mit dem Login, also der Eingabe des Betriebssytem-Passworts für die gesamte Session entsperrt wird und die Passphrase nicht mehr eingegeben werden muß.

    Soweit, so bruchstückhaft, ich umgehe das Problem derzeit, indem ich meine gnupg-Schlüssel zusätzlich in einen verschlüsselten Container einsperre. Da meckert allerdings Enigmail neuerdings beim Start.


    Gruß, muzel

  • Unter Ubuntu und dessen Derivaten war die Passphrasenverwaltung schon in der Vergangenheit verwirrend, weil der Gnome-Keyring sich dazwischengedrängelt hat.


    Dass unter Linux so unübersichtlich ist, ist einer der Gründe, aus denen ich mich bisher nie eingehend mit diesen Agents beschäftigt habe. Ich hatte immer den Eindruck, das wäre insofern zwecklos, weil es einer ständigen Änderung unterworfen ist und auch von der Distribution abhängt.


    Es scheint also der Normalfall zu sein, daß der Keyring mit dem Login, also der Eingabe des Betriebssytem-Passworts für die gesamte Session entsperrt wird und die Passphrase nicht mehr eingegeben werden muß.

    Die Intention dahinter ist nicht schlecht. Aber nicht von jedem gewünscht. Schlussendlich hieße das, dass die Einstellung in Enigmail wirkungslos ist und bleibt.

    Gilt das nur für Ubuntu und Co. oder auch für andere Distributionen? Überrascht hat mich, dass die eingestellte Ablaufzeit auch unter Windows keine Wirkung hat.

  • Überrascht hat mich, dass die eingestellte Ablaufzeit auch unter Windows keine Wirkung hat.

    Hilf mir auf die Sprünge: Wo eingestellt - im Agent oder in Enigmail? Ich hatte in Enigmail (unter Windows) die Zeit auf "0" Minuten gestellt, und werde auch brav jedes Mal nach der Passphrase gefragt.


    In der gpg-agent.conf in C:\Users\%Username%\AppData\Roaming\gnupg\steht bei mir folgendes:

    Code
    ###+++--- GPGConf ---+++###
    default-cache-ttl 0
    max-cache-ttl 0
    ###+++--- GPGConf ---+++### 03/31/18 19:04:32 Mitteleuropäische Sommerzeit
    # GPGConf edited this configuration file.
    # It will disable options before this marked block, but it will
    # never change anything below these lines.

    Wenn ich in Enigmail die Einstellung auf beispielsweise 10 Minuten stelle, dann sieht die Datei so aus:

    Code
    ###+++--- GPGConf ---+++###
    default-cache-ttl 600
    max-cache-ttl 6000
    ###+++--- GPGConf ---+++### 05/25/18 10:33:34 Mitteleuropäische Sommerzeit
    # GPGConf edited this configuration file.
    # It will disable options before this marked block, but it will
    # never change anything below these lines.