패키지 저장소에 대한 공개 GPG 키를 제공하는 URL을 어떻게 찾나요?

패키지 저장소에 대한 공개 GPG 키를 제공하는 URL을 어떻게 찾나요?

Debian Jessie 도커 이미지를 설치 [email protected]하고 사용할 때[email protected]

apt-get install -y software-properties-common && \
add-apt-repository 'deb http://archive.ubuntu.com/ubuntu trusty universe' && \
apt-get install -y mysql-server-5.6 mysql-client-5.6

다음 경고가 표시됩니다.

여: GPG 오류:http://archive.ubuntu.com신뢰할 수 있는 버전: 공개 키를 사용할 수 없기 때문에 다음 서명을 확인할 수 없습니다. NO_PUBKEY 40976EAF437D05B5 NO_PUBKEY 3B4FE6ACC0B21F32

키를 수동으로 추가할지 확실하지 않음

  apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 40976EAF437D05B5 && \
  apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32

안정적인 솔루션입니다. 저장소가 업데이트되면 GPG 키가 변경될 수 있다는 내용을 어디선가 읽었습니다(틀렸다면 정정해 주세요). 다음과 같이 패키지 저장소 URL에서 GPG 키를 설치할 수도 있습니다.

curl -sL http://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add -

그래서 다음과 같은 하위 질문이 있습니다.

  1. 키가 필요한 모든 패키지 저장소에는 공개 GPG 키를 제공하는 URL이 있습니까?
  2. 그러한 URL에 대한 형식이 있습니까?

답변1

debian의 ubuntu 저장소에서 패키지를 설치하려고 하는데 Debian에 ubuntu 키가 없습니다. 새 저장소를 추가하려면 패키지를 인증하기 위해 신뢰할 수 있는 gpg 키가 필요합니다.

저장소의 세 번째 부분에만 새 gpg 키가 필요하거나 키가 변경된 경우에만 필요합니다.

add-apt-repository새 저장소가 추가되고 gpg 키가 추가됩니다.

man add-apt-repository:

  In  the second form, ppa:<user>/<ppa-name> will be expanded to the full
   deb  line  of  the  PPA  and   added   into   a   new   file   in   the
   /etc/apt/sources.list.d/  directory.   The  GPG public key of the newly
   added PPA will also be downloaded and added to apt's keyring.

Debian jessie에서는 Ubuntu 저장소를 추가할 필요가 없으며 보안 저장소를 통해 사용할 수 있습니다.

신뢰할 수 있는 저장소를 삭제하고 다음 행을 추가하십시오 /etc/apt/sources.list.

deb http://security.debian.org/debian-security jessie/updates main 

그런 다음 다음을 실행하십시오.

sudo apt update
sudo apt install mysql-server-5.5

데비안: 보안에 적합

답변2

이 경우 안정적인 답을 얻을 수 있습니다. "공식" 문서에 인용되어 있습니다(https://help.ubuntu.com/community/VerifyIsoHowto#Get_the_key)

귀하의 경우에는 "신뢰할 수 있는"(귀하가) 키 서버를 참조 keyserver.ubuntu.com하고 특정 ID( 40976EAF437D05B5& 3B4FE6ACC0B21F32)로 키를 요청하고 있습니다. 이 방법으로 키를 검색하면 Ubuntu 인프라 관리자가 사용자 개입 없이 업데이트를 처리할 수 있습니다. 키 ID를 사용하면 실제로 키 자체의 암호화 해시를 참조합니다.

오직가능한내가 개선할 점은 "전체" 키 ID를 사용하는 것인데, 이를 통해 더 정확한 검색이 가능하고 더 단호한 공격자가 필요합니다.

위 문서에 있는 gpg 버전의 명령은 동일한 키를 추가하는 데 사용됩니다.당신의 사용자인증에 사용할 수 있는 키링입니다. 이 apt-key명령은 키를 추가합니다.쉬운키체인체계확인을 위해 키를 사용할 수 있습니다.

하위 질문에 관해서 :

키가 필요한 모든 패키지 저장소에는 공개 GPG 키를 제공하는 URL이 있습니까?그리고그러한 URL에 대한 형식이 있습니까?

아니요. 모든 저장소(deb/apt, rpm/yum/dnf)가 특정 "잘 알려진" URL을 통해 키를 게시하는 것은 아닙니다. 해당 패키지 관리 시스템에는 많은 주요 검색 메커니즘이 내장되어 있으므로 도구에 따라 다릅니다. RPM 기반 시스템에서 Yum과 DNF는 관리자가 쉽게 사용할 수 있도록 저장소 정의에 메타데이터를 지정한다는 점에 유의하는 것이 중요합니다. 하지만 이는 사용을 위한 요구 사항이 아니며 URI 경로가 표준화되지 않았습니다.

그런데 이 작업을 수행하는 프로세스는 향후 승인될 수 있습니다.RFC 5785그리고RFC 8615지금은 "일"이지만 앞으로는 개선될 것입니다.

관련 정보