원격 사이트에서 로컬 gpg-agent를 사용할 때 혼합 입력

원격 사이트에서 로컬 gpg-agent를 사용할 때 혼합 입력

gpg-agent해당 옵션을 사용하여 Mac에서 로컬 프로그램을 시작합니다 extra-socket. 그런 다음 SSH를 사용하여 원격 사이트에 연결하고 S.gpg-agent원격 소켓을 로컬 S.gpg-agent.extra소켓으로 전달합니다. 이것은 작동합니다:

ssh -R /remotehome/.gnupg/S.gpg-agent:/localhome/.gnupg/S.gpg-agent.extra remotesystem

원격 컴퓨터에서 무언가에 서명하려고 하면 pinentry로컬에서 대화 상자가 나타나 암호를 묻는 메시지가 나타납니다. 이것이 작동하는 방식입니다. 그러나 비밀번호를 입력하기 시작하면 일부 키 입력이 분명히 들어가고 pinentry(표시되는 대로 *) 일부는 프로세스와 동일한 tty에서 실행되는 쉘에서 끝납니다 pinentry.

     ┌────────────────────────────────────────────────────────────────┐
     │ Note: Request from a remote site.                              │
     │                                                                │
     │ Please enter the passphrase to unlock the OpenPGP secret key:  │
     │ "My name  <my.email@address>"                                  │
     │ 4096-bit RSA key, ID MYKEYIDXXX0000YYY,                        │
     │ created 2015-06-17 (main key ID MYMAINKEYIDXXX0000YYY).        │
     │                                                                │
     │                                                                │
     │ Passphrase: t*i*e_____________________________________________ │
     │                                                                │
     │         <OK>                                    <Cancel>       │
     └────────────────────────────────────────────────────────────────┘

키를 누르면 깨진 비밀번호를 에 보내 거나 셸에 들어가지 않는 키 입력을 Return보낼 수 있습니다 .gpgpinentry

/bin/ksh: tie: not found

어떻게 pinentry잡을 수 있어?모두tty의 열쇠?

로컬 컴퓨터는 GnuPG 2.1.14(컴파일)을 실행하는 Mac입니다 pkgsrc. 원격 사이트는 동일한 GnuPG 버전을 사용하는 Linux 시스템이거나 GnuPG 버전 2.1.15(차이 없음)를 사용하는 OpenBSD 시스템일 수 있습니다. 옵션 extra-socket은 내 것입니다 gpg-agent.conf. 환경 변수가 GPG_TTY올바르게 설정되었으며 gpg-connect-agent updatestartuptty /bye로컬로 실행하면 부팅된 tty가 이동 pinentry하지만 동일한 문제가 있습니다.

gpg-connect-agent updatestartuptty /bye원격 컴퓨터에서 작업을 수행하면 다음과 같은 결과가 발생합니다.

$ gpg-connect-agent updatestartuptty /bye gpg-connect-agent: connection to agent is in restricted mode ERR 67109115 Forbidden <GPG Agent>

...그건 내가 예상했던 일이야.

curs 인터페이스에서 tty 인터페이스로 변경해도 pinentry아무런 차이가 없습니다. 제가 사용할 수 있는 인터페이스 는 이 pinentry두 가지뿐입니다. 나는 X11을 실행하지 않습니다.


업데이트: 로컬 시스템이 OpenBSD 6.3(GnuPG 2.2.9)을 실행하고 원격 시스템이 일부 Ubuntu 시스템(GnuPG 2.1.11)을 실행 중인 경우 상황은 더욱 악화됩니다.아니요키를 눌러 pinentry쉘에 들어가서 모든 내용을 읽으십시오.

관련 정보