(PHP) 소프트웨어 모듈을 새 서버(CentOS 6.9에서 Ubuntu 16.04로)로 마이그레이션하려고 합니다. 프로세스의 어느 시점에서 코드는 다음 명령을 실행하려고 시도합니다.
gpg --no-tty --sign --encrypt --armor --passphrase=whatever --local-user A188E1E4! --recipient A188E1E4
그래서 작업자 서버에서 개인/공개 키 쌍을 내보내려고 합니다.
이 시점에서 막혔습니다.이 매우 비슷한 질문그런데 키가 있어야 할 이름과 경로를 모르겠습니다.
나는 달리기를 시도했지만 gpg --list-keys
:
gpg: "/home/my-username/.gnupg" 디렉터리가 생성되었습니다.
gpg: 새 구성 파일 /home/my-username/.gnupg/gpg.conf'가 생성되었습니다.
gpg: 경고: 이 실행 중에 '/home/my-username/.gnupg/gpg.conf'의 옵션이 활성화되지 않았습니다.
gpg: 키링 "/home/my-usernameo/.gnupg/pubring.gpg"가 생성되었습니다.
gpg:/home/my-username/.gnupg/trustdb.gpg: trustdb가 생성되었습니다.
명령을 시작하는 데 사용된 코드가 어떤 사용자인지 알 수 없습니다. 현재 사용자뿐만 아니라 모든 키를 나열하여 어떤 키를 내보내야 하는지 확인할 수 있는 방법이 필요할 수도 있습니다.
답변1
gpg
여기에서 키를 로드하려고 시도 ~/.gnupg
하지만 각 사용자가 별도의 키링을 갖고 있기 때문에 "시스템의 모든 키"는 나열되지 않습니다. 당신은 이것을 할 수 없습니다.
귀하의 경우 gpg
응용 프로그램은 에서 키 또는 프로세스를 소유한 사용자의 이름을 나열하려고 www-data
시도 php
합니다 php
.
GNUPGHOME
작업이나 HOME
환경 변수를 통해 또는 로 설정하여 --homedir
키 위치를 변경할 수 있습니다 gpg
. 이 옵션은 gpg
모든 버전에서 사용할 수 없습니다 .