가져온 gpg 키를 yum에서 사용하도록 만드는 방법은 무엇입니까?

가져온 gpg 키를 yum에서 사용하도록 만드는 방법은 무엇입니까?

yum.repos.d디렉터리에 외부 저장소를 추가 하려고 합니다 . 저장소의 패키지와 메타데이터는 gpg 키를 사용하여 서명됩니다. 관련이 있는 경우 CentOS 7.2를 사용하고 있습니다.

내가 아는 한, 저장소를 설정하는 전통적인 방법은 저장소 파일에 gpg 키에 대한 링크를 포함하는 것입니다.

즉, example.repo내부 파일에는 /etc/yum.repos.d다음 줄이 포함되어 있습니다.

gpgkey = https://example.com/repo/key

그런 다음 를 실행하면 GPG 키를 가져오라는 메시지가 표시 yum update되고 [y/N], 실행하면 yum -y update자동으로 키를 가져옵니다. 지금까지는 평범했습니다.

실험적으로 저장소 파일에서 gpg-key 다운로드 링크를 제거하고 대신 수동으로 키를 추가해 보았습니다.

wget -O key https://example.com/repo/key
rpm --import key
확인하고
rpm -qa gpg-pubkey*

yum update내 기대는 이 작업이 프롬프트 없이 수행 될 수 있다는 것입니다 [y/N]. 하지만 작동하지 않습니다. 이미 가져온 키를 가져오라는 메시지가 계속 표시됩니다. 또한 gpgkey저장소 파일에서 항목을 제거하려고 시도했지만 이 경우 오류가 발생합니다( 및 yum update도 있으므로 ).gpgcheck = 1repo_gpgcheck = 1

이것이 왜 중요합니까? 글쎄, 이 프로세스를 자동화하려면 키 다운로드를 위해 https 전송을 신뢰해야 하는 것 같습니다. 괜찮지만 GPG 키는 패키지가 올바르게 다운로드되었는지 확인하는 것 외에는 실제로 보안을 추가하지 않습니다.

간단히 말해서 내 생각에는누구나키를 가져왔다는 것을 yum이 인식하도록 하는 트릭이 없습니다.또는GPG 키는 실제로 기존의 https 외에는 많은 것을 추가하지 않습니다. 어떤 단서가 있나요?

답변1

이것주요 수입품을 자동화하는 데 효과가 있는 것으로 보이는 화물 컬트 해결 방법은 다음과 같습니다.

yum -q makecache -y --disablerepo='*' --enablerepo=THENEWREPO

답변2

rpm --importYUM 저장소가 아닌 RPM 패키지를 확인하는 데에만 가져온 키를 사용하십시오 . yum내부에 자신의 키를 숨깁니다 /var/lib/yum/repos. 각 저장소마다 별도의 키링을 유지합니다.

저장소가 설치될 때 원격 키를 정말로 신뢰하고 싶지 않다면 키를 별도로 다운로드하고 gpgkey저장소 필드에 대한 로컬 경로를 설정하면 됩니다. 그런 다음 저장소(신뢰할 수 있는) 키로 가득 찬 로컬 파일을 사용합니다. 키가 순환되는 경우 수동으로 새 키를 가져와야 한다는 점을 기억하세요.

관련 정보