Aktualizacja
Począwszy od Ubuntu 16.04, wtyczka działa zgodnie z oczekiwaniami i nie ma potrzeby obniżania wersji zgodnie z sugestią w zaakceptowanej odpowiedzi. Pytanie dotyczyło Ubuntu 15.04 i być może 15.10.
Oryginalny post
Używam Thunderbird + Enigmail od lat. Obecnie używam Thunderbirda 38.5.1, Enigmail w wersji 1.9 (20160223-1641) i GPG 2.0.26 na moim komputerze stacjonarnym (Ubuntu 15.04 64-bit, z Gnome Shell).
Kilka dni temu, po ponad rocznej operacji, Enigmail nagle zaczął narzekać na następujący błąd przy każdej próbie wysłania podpisanego lub zaszyfrowanego e-maila:
GnuPG zgłosił błąd w komunikacji z gpg-agent (komponent GnuPG).
Jest to błąd konfiguracji systemu lub konfiguracji, który uniemożliwia prawidłowe działanie Enigmail i nie może zostać naprawiony automatycznie.
Zdecydowanie zalecamy zapoznanie się z naszą witryną pomocy technicznej pod adresem https://enigmail.net/faq .
Przejrzałem stronę z często zadawanymi pytaniami i wypróbowałem kilka rzeczy, ale nie byłem jeszcze w stanie rozwiązać problemu.
pinentry
Komenda działa poprawnie i pokazuje pinentry-qt4
okno (nie znaczy oparty na tekście):
pinentry <<EOT
SETDESC Hello World
CONFIRM
EOT
Jednak gpg-agent-connect
polecenie nie powiedzie się:
gpg-connect-agent <<EOT
heredoc> GETINFO version
heredoc> EOT
ERR 280 not implemented
Próbowałem wyłączyć gnome keyring zgodnie z sugestią, ale to też nie działa. (Tak, zrestartowałem system pomiędzy nimi, ale chcę też, aby klucz był włączony jak zwykle.) Próbowałem również eksportować i ponownie importować moje ustawienia Enigmail (tj. $HOME/.gnupg/
W międzyczasie zmieniłem nazwę na coś innego), ale tak się stało też nie działa.
Co dziwne, kiedy uruchamiam gpg-agent
ręcznie z powłoki, a następnie uruchamiam Thunderbirda, wydaje się, że komunikuje się z gpg-agent
, jak pokazano poniżej:
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
Jednak nie widzę żadnych danych wyjściowych, jeśli spróbuję wysłać podpisaną i / lub zaszyfrowaną wiadomość e-mail. Pokazuje się to tylko po uruchomieniu Thunderbirda.
Ponadto dodałem /usr/bin/gpg-agent --daemon
polecenie jako aplikację startową w panelu Gnome Startup Applications, ale nie miało to znaczenia.
Wydaje mi się, że zastosowałem regularną aktualizację około 2/23, ale problem nie stał się widoczny, dopóki system nie został zrestartowany 2/24 w tym tygodniu. Niestety nie pamiętam, które pakiety zostały zaktualizowane, ale nie było ich tak wiele. (Zwykle aktualizuję system).
Należy pamiętać, że działało to bez problemów od lat, do około 2 dni temu. (Używam tej konfiguracji w moim domowym komputerze stacjonarnym przez 4 lata + bez problemów, ale mój komputer stacjonarny jest laptopem, a Ubuntu czasami nie działa tak ładnie z nieznanych powodów ...)
Kiedy próbuję otworzyć zaszyfrowane wiadomości e-mail, które otrzymałem (lub zapisałem wersje robocze, które również są zaszyfrowane), gpg-agent
pojawia się ten sam komunikat o błędzie , ale odszyfrowuje wiadomość e-mail po zapytaniu o hasło do klucza prywatnego.
P: Jak mogę rozwiązać ten błąd komunikacji, który uniemożliwia mi wysyłanie podpisanych / zaszyfrowanych wiadomości e-mail?
Aby uznać problem za naprawiony, sytuacja musi wrócić do normalnej pracy bez komunikatów o błędach itp.
Z góry dziękuję za wszelką pomoc, która może pomóc rozwiązać ten problem.
Podczas pisania tego posta zauważyłem gpg-agent
w terminalu następującą wiadomość od demona:
# ...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
Okazało się to nieoczekiwanie, ponieważ w międzyczasie nie prosiłem Thunderbirda o zrobienie czegoś szczególnego.
Zaktualizowałem z 15.04 -> 15.10 -> 16.04 i mogę potwierdzić, że Thunderbird 38.6 + Enigmail 1.9.1 działa dla mnie normalnie. Dane wyjściowe poleceń są również takie, jakie powinny być:
➜ ~ 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
źródło
ERROR check_hijack
faktycznie jest emitowany? Często zadawane pytania pojawiają się nieaktualne i nie jestem pewien, gdzie jest już dostępna opcja wyświetlania dziennika debugowania Enigmail.Enigmail > Debugging Options > View Log
ujawniaWARNING: The GNOME keyring manager hijacked the GnuPG agent
. Jestem więc pewien, że GnomeKeyring jest spokrewniony.echo | gpg2 --sign
ujawnia problem w interfejsie CLI. Niestety wyłączenie gnome-keyring (jako jedyne obejście) nie jest dla mnie opcją.Odpowiedzi:
Chociaż odpowiedź tego drugiego pokazuje tylko, jak rozwiązać go w systemie Debian, podejście jest takie samo:
Obniżanie.
Ponieważ Enigmail opublikował 23 lutego wersję 1.9, a problemy zaczęły się od tego dnia, jedyne trzy rozwiązania to:
Nie mogę pomóc z 1 lub 2, ale z numerem 3:
Powinno teraz działać tak, jak przed aktualizacją Enigmail 1.9.
Sugerowałbym wyłączenie automatycznych aktualizacji Enigmail, dopóki ten błąd wprowadzony w 1.9 nie zostanie rozwiązany. Możesz je wyłączyć, klikając link „więcej” znajdujący się w tekście opisu rozszerzenia Enigmail na stronie dodatków Thunderbird.
źródło
Enigmail Key ... not found or not valid. The (sub-)key might have expired.
Bardzo dziękuję za szczegółowy wkład wszystkich w tę kwestię.
Mam podobny problem, ponieważ mój system zaktualizował się do Enigmail 1.9 25 lutego. Rozwiązałem problem, odinstalowując Enigmail 1.9 i przełączając się na 1.8.
Dla mnie było to łatwe, ponieważ korzystam z Debiana 8 i po prostu odinstalowałem Enigmail jako samodzielny dodatek i zastąpiłem go Enigmailem w głównym repozytorium Debiana (która, jak pokazują niektóre badania, okazuje się być wersją 1.8.2 ). Wzruszać ramionami. Od tej zmiany nie miałem problemów. Mam nadzieję, że jest to przydatne dla innych i jeszcze raz dziękuję za postawienie mnie na właściwej drodze do rozwiązania problemu.
źródło
Nie trzeba obniżać wersji wtyczki enigmail:
W terminalu:
(--use-standard-socket jest przestarzały)
Nie ma potrzeby restartowania Thunderbirda.
źródło
Miałem ten sam problem w tym sensie, że Enigmail nagle rzucił ten komunikat o błędzie przy każdej operacji po wielu miesiącach pracy. Wyłączenie komponentu GPG Password Agent w GNOME Keyring rozwiązało ten problem - Enigmail używa „oryginału”
gpg-agent
z programem pinentry (zamiast monitu o hasło do kluczy GNOME) i wszystko działa bez problemów.Wyłączyłem komponent hasła GNOME Keyring GPG przy użyciu domyślnego programu Ubuntu „Startup Applications”:
Powiedziałeś, że próbowałeś wyłączyć GNOME Keyring i że używasz GNOME Shell. Może to nie działało poprawnie? Możesz spróbować wykonać te same kroki, które mam (Aplikacje startowe / Unity) i sprawdzić, czy to coś zmieni.
Wygląda na to, że ten problem został spowodowany przez ostatnią aktualizację Enigmail (wersja 1.9 została wydana 23 lutego 2016 r.), Ponieważ wcześniej można go było używać z GNOME Keyring bez generowania tego błędu. Fakt, że wyłączenie GNOME Keyring rozwiązuje problem (i czas) sugeruje, że błąd Enigmail # 575 jest powiązany.
źródło
ERROR hijack
komunikat pojawia się w dzienniku. Próbowałem wyłączyć tę samą opcję, którą już tam miałeś, ale problem polega na tym, że kiedy to zrobiłem, to nigdy nie można z nim porozmawiać,gpg-agent
ponieważpinentry
monit o podanie hasła nigdy się nie pojawia (tzn. Wcześniej pojawia się inny komunikat o błędzie do każdej próby komunikacji zgpg-agent
). Jeszcze raz się tym zajmę, kiedy jutro wrócę do pracy.