적절한 소스 키링에 GPG 키를 추가하는 방법은 무엇입니까?


67

우분투 문서 페이지는 다음과 같이 말합니다 :

Opera GPG 키를 추가하는 것이 좋습니다.

wget -qO - http://deb.opera.com/archive.key | sudo apt-key add -

어디에 추가합니까?

조언을하고 싶지만 소프트웨어 센터에서 gpg 키를 추가 할 부분을 모르겠습니다.


3
나는 이것이 터미널에 들어가는 한 줄 명령이라고 생각합니다
Mateo

1
우분투의 .msi는 .deb입니다.
Alvar

4
참고로, 비 HTTPS를 통해 가져 오는 키를 추가하면 서명 패키지가 추가 한 보안이 손상됩니다. 가능하면 보안 채널 (https : //)을 통해 키를 다운로드해야합니다.

답변:


86

이것은 터미널에 입력하는 한 줄 명령입니다. 참조 무엇 터미널이며 어떻게 열고 사용합니까?

이를 사용하려면 터미널에 전체 명령을 붙여 넣습니다 (https 사용).

wget -qO - https://deb.opera.com/archive.key | sudo apt-key add -

그러나 물론 수행중인 작업을 알지 못하고 명령을 복사하고 붙여 넣는 것은 어려우며 작업을 실행 취소하는 방법에 대한 지침이 없으므로 명령의 기본 구성은 다음과 같습니다.

  • wget서버에서 무언가를 다운로드합니다. Ubuntu 16.04에 대한 wget 매뉴얼을 참조하십시오 .
  • | 한 명령의 출력을 가져와 다른 명령의 입력으로 실행하는 pipline입니다.
  • apt-key add 패키지 키를 추가합니다

기본적으로 키를 다운로드 한 다음 하나의 명령으로 추가합니다.

나는 명령을 테스트했으며 작동해야합니다.


지금은, (에서이 명령을 실행 작동하는지 확인하기 위해 이 답변 ) :

apt-key list

추가 된 키가 나열되고 Opera의 키는 아래와 같이 맨 아래에 나열되어야합니다.

pub   1024D/30C18A2B 2012-10-29 [expires: 2014-10-29]
uid                  Opera Software Archive Automatic Signing Key 2013 <packager@opera.com>
sub   4096g/C528FCA9 2012-10-29 [expires: 2014-10-29]

연결된 답변은 다음을 사용하여 필요한 경우 키를 제거 할 수 있음을 보여줍니다.

sudo apt-key del 30C18A2B

30C18A2B목록에서 키 ID되고.


해당 명령을 수행하고 screen-shot 과 똑같이 소스를 설정 한 후 다음을 수행 하십시오 .

sudo apt-get update
sudo apt-get install opera

(임의의 경고는 있지만 설치 또는 소프트웨어 센터 운영에 영향을주는 것은 없습니다)

그리고 제거를 위해 (경우에 따라) : 응용 프로그램을 완전히 제거하는 올바른 방법은 무엇입니까?


요약하면 다음과 같습니다.

  • 리포지토리 추가 여기에 이미지 설명을 입력하십시오
  • 로 키 추가 apt-key
  • 터미널에 설치 apt-get
  • 대시로 검색 여기에 이미지 설명을 입력하십시오

4
"apt-key adv"를 사용하면 공개 키 서버에서 키를 다운로드 할 수 있습니다.
예레미야

로 키를 추가하면 apt-key add.key 파일 (이 경우 "archive.key")을 결과없이 삭제할 수 있습니다. 키 (파일이 아닌 정보)가 이미 어딘가에 목록에 추가되었으므로 파일이 더 이상 필요하지 않습니다.
Cerran

2
@Cerran, 맞아. APT는 키를 계속 다른 곳 ( /etc/apt/trusted.gpg.d//var/lib/apt/keyrings/예를 들어 있습니다.)
알렉시스 WILKE

wget에서 SSL 오류가 발생하면 curl을 대신 사용할 수 있습니다.curl -L https://deb.opera.com/archive.key | sudo apt-key add -
rubo77

23

PPA에서 키를 수동으로 추가하는 경우

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 00000000

00000000PPA 웹 사이트에 추가하려는 키의 두 번째 부분으로를 대체합니다 .

예를 들어이 줄을 찾으면

 4096R/7BF576066

이 예제에서 두 번째 부분 (크기에 상관없이) 만 사용하십시오. 7BF576066


같은 오류입니다 gpg: keyserver receive failed: No keyserver availablegpg: keyserver receive failed: Connection refused일반은?
iuridiniz

아니요, 이와 같은 오류는 일반적이지 않습니다. 아마도 당신은 잘못된 키를 쓰고있을 것입니다.
Paulo Coghi

19

최신 버전의 apt도 다음을 지원합니다.

apt-key adv --fetch-keys http://deb.opera.com/archive.key

이 방법은 다음과 같은보다 자세한 피드백도 제공합니다.

gpg: key 7BD9BF62: public key "signing key <username@domain.com>" imported
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)

또한 wget 또는 curl과 같은 추가 종속성이 필요 없다는 추가 보너스가 있습니다.


1
apt-key adv는 https를 위해 작동하지 않는 것 같습니다
danihodovic

5
@ dani-h gnupg-curlGPG 1.x를 사용하는 경우 HTTPS를 사용해야합니다.
Tao Wang

apt-key adv --fetch-keysURL에서 하나의 키만 가져 오며 URL에 여러 키가 포함 된 경우 wget | apt-key add대신 사용하십시오 .
Tao Wang

(단지 17.10 우분투에서 테스트) 이미 https로 작동하는 것 같다
user1182474

0

.asc 키만있는 또 다른 방법은 .asc 키를 다운로드하여 키링에 추가하는 것입니다.

예를 들어-

curl -L https://packages.riot.im/debian/repo-key.asc | sudo apt-key add -
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.