최신 정보
Ubuntu 16.04부터 플러그인이 예상대로 작동 하며 허용되는 답변에서 제안한대로 다운 그레이드 할 필요가 없습니다 . 이 질문은 Ubuntu 15.04 및 아마도 15.10 에 적용되었습니다 .
원본 게시물
나는 수년간 Thunderbird + Enigmail을 사용해 왔습니다. 현재 내 업무용 PC (Ubuntu 15.04 64 비트, Gnome Shell)에서 Thunderbird 38.5.1, Enigmail 버전 1.9 (20160223-1641) 및 GPG 2.0.26을 사용하고 있습니다.
며칠 전, 1 년 이상 운영 한 후 Enigmail은 서명되거나 암호화 된 이메일을 보내려고 할 때마다 갑자기 다음과 같은 오류로 불만을 시작했습니다.
GnuPG가 gpg-agent (GnuPG의 구성 요소)와의 통신에서 오류를보고했습니다.
이것은 Enigmail이 제대로 작동하지 못하게하고 자동으로 수정할 수없는 시스템 설정 또는 구성 오류입니다.
지원 웹 사이트 ( https://enigmail.net/faq) 를 참조하십시오 .
FAQ 페이지를 살펴보고 여러 가지를 시도했지만 아직 문제를 해결할 수 없었습니다.
이 pinentry
명령은 정상적으로 작동하며 pinentry-qt4
창을 표시합니다 (예 : 텍스트 기반이 아님).
pinentry <<EOT
SETDESC Hello World
CONFIRM
EOT
그러나 gpg-agent-connect
명령이 실패합니다.
gpg-connect-agent <<EOT
heredoc> GETINFO version
heredoc> EOT
ERR 280 not implemented
제안한대로 그놈 키링을 비활성화하려고 시도했지만 작동하지 않습니다. (예, 그 사이에 시스템을 다시 시작했지만 평소와 같이 키 링을 활성화 상태로 유지하고 싶습니다.) 또한 Enigmail 설정을 내보내고 다시 가져 오려고 시도했지만 (즉 $HOME/.gnupg/
, 그 동안 다른 것으로 이름 바꾸기 ) 시도했습니다. 작동하지 않습니다.
이상하게도 gpg-agent
셸 에서 수동으로 시작한 다음 Thunderbird를 시작 하면 아래와 같이 와 통신 하는 것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
그래도 서명 및 / 또는 암호화 된 전자 메일을 보내려고하면 출력이 표시되지 않습니다. Thunderbird가 시작될 때만 나타납니다.
또한 /usr/bin/gpg-agent --daemon
Gnome Startup Applications 패널에서 명령을 시작 응용 프로그램으로 추가 했지만 아무런 차이가 없었습니다.
2/23 쯤에 정기 업데이트를 적용했다고 생각하지만 이번 주 2/24에 시스템을 다시 시작할 때까지 문제가 표시되지 않았습니다. 불행히도 어떤 패키지가 업데이트되었는지 기억이 나지 않지만 그다지 많지는 않았습니다. (보통 시스템을 계속 업데이트합니다.)
이 문제는 약 2 일 전까지 몇 년 동안 문제없이 작동하고 있습니다. (저는 홈 데스크탑 PC에서 4yrs + 이상 으로이 설정을 문제없이 사용했지만 작업 PC는 랩톱이며 우분투는 때로는 알 수없는 이유로 잘 작동하지 않습니다 ...)
수신 한 암호화 된 이메일 (또는 저장된 초안도 암호화 됨)을 열려고하면에 대해 동일한 오류 메시지가 표시 gpg-agent
되지만 개인 키 암호 문구를 요청한 후 이메일 메시지의 암호를 해독합니다.
Q : 서명 된 / 암호화 된 이메일을 보내지 못하게하는이 통신 오류를 어떻게 해결할 수 있습니까?
문제가 해결 된 것으로 간주하려면 상황이 오류 메시지 등없이 정상적으로 작동해야합니다.
이 문제를 해결하기 위해 제공 할 수있는 도움에 대해 미리 감사드립니다.
이 게시물을 쓰는 동안 gpg-agent
터미널 의 데몬에서 다음 메시지가 나타났습니다 .
# ...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
그 동안 썬더 버드에게 특히 아무것도하지 말라고 요청했기 때문에 예기치 않게 나타났습니다.
15.04-> 15.10-> 16.04에서 업데이트되었으며 Thunderbird 38.6 + Enigmail 1.9.1이 정상적으로 작동하는지 확인할 수 있습니다. 명령의 출력도 다음과 같습니다.
➜ ~ 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
ERROR check_hijack
실제로 방출 되는지 어디에서 확인 하시겠습니까? FAQ가 최신 버전이 아니며 Enigmail의 디버그 로그를 볼 수있는 옵션이 더 이상 있는지 확실하지 않습니다.
Enigmail > Debugging Options > View Log
공개 WARNING: The GNOME keyring manager hijacked the GnuPG agent
합니다. 그래서 나는 GnomeKeyring 이 관련되어 있다고 확신 합니다. echo | gpg2 --sign
CLI에서 문제를 나타냅니다. 슬프게도 gnome-keyring을 비활성화하는 것은 유일한 대안이 아닙니다.