내 Centos7 시스템에서 호스팅되는 적절한 저장소에 사용될 GPG 키를 생성하려고 합니다. 새 사용자 "apt"를 생성한 다음 키를 생성하려고 시도했지만 결국 암호 문구가 필요하다고 명시되었지만 사용자가 취소했다는 메시지가 즉시 닫혔습니다. 아니요, 그렇지 않습니다!
그 이후 나는 휠 그룹에 있는 루트 및 표준 사용자 이름을 사용하여 동일한 단계를 성공적으로 반복했습니다.
두 가지 질문:
- 다른 목적(예: 적절한 저장소)에 대해 다른 gpg 키를 사용하는 것이 좋은 생각입니까? 그리고 키를 루트로 생성해야 합니까?
- 이 사용자에 대한 GPG 키를 생성할 수 없는 이유는 무엇입니까? 먼저 이 사용자에 대한 다른 키를 생성해야 합니까?
감사해요
[apt@devserver ~]$ gpg --gen-key
gpg (GnuPG) 2.0.22; Copyright (C) 2013 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Please select what kind of key you want:
(1) RSA and RSA (default)
(2) DSA and Elgamal
(3) DSA (sign only)
(4) RSA (sign only)
Your selection?
RSA keys may be between 1024 and 4096 bits long.
What keysize do you want? (2048)
Requested keysize is 2048 bits
Please specify how long the key should be valid.
0 = key does not expire
<n> = key expires in n days
<n>w = key expires in n weeks
<n>m = key expires in n months
<n>y = key expires in n years
Key is valid for? (0) 1y
Key expires at Thu 12 Jul 2018 04:32:05 PM UTC
Is this correct? (y/N) y
GnuPG needs to construct a user ID to identify your key.
Real name: somename
Email address: [email protected]
Comment:
You selected this USER-ID:
"somename <[email protected]>"
Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? O
You need a Passphrase to protect your secret key.
gpg: cancelled by user
gpg: Key generation canceled.
[apt@devserver ~]$
답변1
"사용자가 취소함" 오류의 경우: GnuPG는 (예를 들어) 파이프를 통해 표준 입력에서 암호를 읽는 대신 터미널에서 직접 암호를 읽는지 확인하려고 합니다. 이를 위해 tty를 직접 열려고 시도합니다. 안타깝게도 파일 권한이 방해가 됩니다. tty 장치는 로그인한 사용자가 소유합니다. 그러므로 이 사용자와 루트만이 그것을 열 수 있습니다. GnuPG는 취소했다고 오류를 잘못 보고하는 것 같습니다(실제로는 권한이 거부되었습니다).
저장소에 대해 별도의 키가 있어야 하는지 여부는 그렇습니다. 몇 가지 이유가 떠오릅니다.
- 저장소는 여러 사람이 관리할 수 있습니다. 모두 액세스 키가 필요합니다. 당신은 분명히 그들이 당신의 개인 키에 접근하는 것을 원하지 않을 것입니다.
- 새 패키지를 처리하는 소프트웨어에는 액세스 키가 필요합니다. 많은 리포지토리의 경우 이는 인터넷에 연결된 컴퓨터에서 키를 사용할 수 있도록 유지해야 함을 의미합니다. 이를 위해서는 개인 키에 이상적인 것보다 낮은 수준의 보안이 필요합니다.
- 업로드를 자동으로 처리하는 경우 비밀번호 없이 키를 저장해야 할 수도 있습니다. 당연히 보안이 저하됩니다.
- 개인 키가 손상된 경우에는 이를 취소하는 것이 가장 좋습니다. 저장소 키 유출과 동일합니다. 손상된 키를 취소하는 것이 더 저렴해집니다.
개인 키를 사용하여 저장소 키에 서명하는 것이 일반적입니다.
키 생성을 루트로 실행하는 경우: 이상적이지는 않지만(루트로 실행하지 않을 이유가 없음) 실제 문제는 아닐 것입니다.
답변2
오늘 이런 일을 겪었어요확립된screen
아직 설치되지 않은 경우 솔루션을 계속 설치하세요.
sudo yum install screen
그런 다음 키를 생성해야 하는 사용자(일반적으로 Apache를 실행하는 사용자)로 screen을 실행한 다음 실행합니다.
gpg --gen-key
그러면 스크린 세션에 암호 프롬프트가 나타납니다! 그런 다음 완료되면 Enter를 눌러 exit
스크린 세션을 종료합니다. 오랫동안 살다.
답변3
지금 이 질문에 답하기에는 너무 늦었을 수도 있지만, 한 가지 옵션은
export GPG_TTY=$(tty)
비밀번호 프롬프트로 사용할 tty를 GPG에 알리는 것입니다.
답변4
SSH를 통해 user1로 로그인하고 명령을 사용하여 user2로 전환한 다음 키를 생성하려고 시도했을 때 su - user2
동일한 문제가 발생했습니다 . 문제를 해결하려면 새 터미널을 열고 user2로 서버에 SSH를 통해 연결하고 다음 명령을 실행합니다.
gpg --gen-key