O Enigmail não pode se comunicar com o gpg-agent

10

Atualizar

A partir do Ubuntu 16.04, o plug-in funciona conforme esperado e não é necessário fazer downgrade como sugerido na resposta aceita. A questão era aplicável ao Ubuntu 15.04 e, talvez , 15.10.

Original Post

Estou usando o Thunderbird + Enigmail há anos. Atualmente estou usando o Thunderbird 38.5.1, o Enigmail versão 1.9 (20160223-1641) e o GPG 2.0.26 no meu PC de trabalho (Ubuntu 15.04 64 bits, com o Gnome Shell).

Alguns dias atrás, após 1 ano de operação, o Enigmail começou a reclamar com o seguinte erro sempre que eu tentava enviar um email assinado ou criptografado:

GnuPG reported an error in the communication with gpg-agent (a component of GnuPG).

This is a system setup or configuration error that prevents Enigmail from working properly and cannot be fixed automatically.

We strongly recommend that you consult our support web site at https://enigmail.net/faq.

Eu passei pela página de perguntas frequentes e tentei várias coisas, mas ainda não consegui resolver o problema.

O comando pinentry funciona bem e mostra a janela pinentry-qt4 (ou seja, não baseada em texto):

pinentry <<EOT
SETDESC Hello World
CONFIRM
EOT

No entanto, o comando gpg-agent-connect falha:

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

Eu tentei desativar o chaveiro do GNOME como sugerido, mas ele também não funciona. (Sim, reiniciei o sistema no meio, mas também quero manter o chaveiro ativado como de costume.) Também tentei exportar e reimportar minhas configurações do Enigmail (ou seja, renomear $HOME/.gnupg/ para outra coisa enquanto isso), mas isso também não funcionou.

Por incrível que pareça, quando eu inicio o gpg-agent manualmente a partir do shell, e então inicio o Thunderbird, parece que está se comunicando com o gpg-agent , como mostrado abaixo:

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

Eu não vejo nenhuma saída se eu tentar enviar um email assinado e / ou criptografado, no entanto. Isso só aparece quando o Thunderbird é iniciado.

Além disso, adicionei o comando /usr/bin/gpg-agent --daemon como um aplicativo de inicialização no painel Gnome Startup Applications, mas isso não fez diferença.

Acho que apliquei uma atualização regular por volta de 2/23, mas o problema não ficou visível até o sistema ser reiniciado em 2/24 nesta semana. Infelizmente, não me lembro quais pacotes foram atualizados, mas não houve muitos. (Eu normalmente mantenho o sistema atualizado.)

Por favor, note que isso tem funcionado sem problemas por anos ou mais, até cerca de dois dias atrás. (Eu também tenho usado essa configuração no meu PC de mesa por 4 anos + sem problemas, mas meu PC de trabalho é um laptop, e o Ubuntu às vezes não funciona tão bem por razões desconhecidas ...)

Quando tento abrir e-mails criptografados que recebi (ou rascunhos salvos, que também são criptografados), recebo a mesma mensagem de erro sobre o gpg-agent , mas ele descriptografa a mensagem de e-mail depois de solicitar minha privacidade frase secreta.

P: Como posso resolver esse erro de comunicação que me impede de enviar e-mails assinados / criptografados?

Para considerar o problema resolvido, a situação precisa voltar a funcionar normalmente sem as mensagens de erro, etc.

Agradecemos antecipadamente por qualquer ajuda que você possa fornecer para ajudar a corrigir esse problema.

Enquanto escrevia este post, notei a seguinte mensagem do daemon gpg-agent no 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

Isso apareceu inesperadamente, já que eu não pedi ao Thunderbird para fazer nada em particular nesse meio tempo.

Eu atualizei de 15.04 - > 15,10 - > 16.04 e pode confirmar que o Thunderbird 38.6 + Enigmail 1.9.1 está funcionando normalmente para mim. A saída dos comandos também é o que eles deveriam ser:

➜  ~ 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
    
por code_dredd 26.02.2016 / 18:47

4 respostas

5

Embora a resposta desse outro mostre apenas como resolvê-lo em um sistema Debian, a abordagem é a mesma:

Downgrade.

Desde que o Enigmail lançou a versão 1.9 em 23 de fevereiro e os problemas começaram a partir daquele dia, as únicas três soluções são:

  1. Aguarde que o Enigmail resolva as coisas e instale a atualização deles na versão 1.9.xe pare de usar a criptografia até fornecer a atualização
  2. Explore e resolva o problema sozinho (o que nem todo mundo é capaz de fazer devido ao conhecimento limitado da arquitetura de software subjacente)
  3. Faça downgrade para 1.8.2, depois espere o Enigmail ordenar as coisas e atualize para o 1.9.x que resolve o erro que ocorreu com o 1.9.

Eu não posso ajudar com 1 ou 2, mas com o número 3:

  • Faça o download do Enigmail 1.8.2 , que é a última versão pré-1.9 que não introduziu o erro
  • Desinstale o Enigmail 1.9 através do menu Complementos do Thunderbird
  • No mesmo menu, instale manualmente o arquivo 1.8.2 baixado, clicando no botão de configuração de complementos na parte superior da página de complementos do Thunderbird, à esquerda do campo de entrada de texto de pesquisa
  • Reiniciar o Thunderbird

Agora deve funcionar como antes da atualização para o Enigmail 1.9.

Sugiro desativar as atualizações automáticas do Enigmail até que o bug introduzido na versão 1.9 tenha sido resolvido. Você pode desativá-los clicando no link "more" que está no texto descritivo da extensão Enigmail na página de complementos do Thunderbird.

    
por 29.02.2016 / 11:09
5

Muito obrigado pela contribuição detalhada de todos sobre este assunto.

Eu tenho um problema parecido desde que meu sistema foi atualizado para o Enigmail 1.9 em 25 de fevereiro. Eu consertei o problema desinstalando o Enigmail 1.9 e mudando para 1.8.

Para mim, isso foi fácil desde que eu usei o Debian 8 e eu simplesmente desinstalei o Enigmail como um addon independente e substituí-lo com a versão debian do repositório principal do Enigmail (que, algumas pesquisas mostram, por acaso é versão 1.8.2 ). Dar de ombros. Não teve problemas desde essa mudança. Espero que isso seja útil para os outros e obrigado novamente por me colocar no caminho certo para resolver o problema.

    
por 28.02.2016 / 21:37
2

Não é necessário fazer o downgrade do plugin enigmail:

  • Item da lista
  • Ubuntu 16.04
  • Thunderbird 45.2.0
  • Enigmail 1.9.5
  • gpg (GnuPG) 1.4.20

Em um terminal:

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

(--use-standard-socket é obsoleto)

Não é necessário reiniciar o Thunderbird.

    
por 31.08.2016 / 14:22
1

Eu tive o mesmo problema no sentido de que o Enigmail repentinamente lançou essa mensagem de erro em todas as operações depois de ter trabalhado por muitos meses. Desativar o componente GPG Password Agent do GNOME Keyring resolveu esse problema para mim - o Enigmail então usa o “original” gpg-agent com um programa pinentry (em vez do prompt do passphrase do GNOME Keyring) e tudo funciona sem problemas.

Eu desabilitei o componente de senha GPG do Keyring do GNOME usando o programa padrão “Startup Applications” do Ubuntu:

VocêdissequetentoudesativaroKeyringdoGNOMEequeestavausandooGNOMEShell.Talvezissonãofuncionoucorretamente?Vocêpoderiatentarusarosmesmospassosqueeutenho(StartupApplications/Unity)everseissomudaalgumacoisa.

ParecequeesseproblemafoicausadoporumaatualizaçãorecentenoEnigmail(versão1.9foilançadaem23defevereirode2016)desdeantes,elepoderiaserusadocomoGNOMEKeyringsemgeraresseerro.OfatodedesabilitaroKeyringdoGNOMEresolveoproblema(eomomento)sugerequeo bug do Enigmail # 575 está relacionado.

    
por 28.02.2016 / 20:24