![yum install http - 안전한가요?](https://linux55.com/image/96882/yum%20install%20http%20-%20%EC%95%88%EC%A0%84%ED%95%9C%EA%B0%80%EC%9A%94%3F.png)
저는 yum을 사용하여 패키지를 설치하는 데 익숙하지 않습니다. 나는 전생에 apt를 사용했습니다.
현재 몇 가지 실행 지침을 보고 있습니다.
# yum install http://example.com/package.rpm
더 많은 패키지를 다운로드할 수 있는 특정 저장소를 구독하는 것으로 보입니다. 이것이 안전한 습관입니까?
비교를 위해, 나는 apt 패키지에 gpg 서명이 있다는 것을 알고 있습니다. 이는 http를 통해 다운로드하는 것이 문제가 되지 않음을 의미합니다.여기에 명시된 바와 같이. apt를 사용하여 기본 저장소 외부에서 패키지를 다운로드할 때 apt에 대한 gpg 키를 수동으로 추가하여 비표준 패키지가 동일한 신뢰할 수 있는 소스를 갖도록 허용할 수 있습니다.
위 명령을 실행하면 설치를 시작하기 전에 gpg 키를 수락하라는 메시지가 표시되나요, 아니면 아무 것도 설치할 수 있나요?
해당되는 경우 내 파일이 해당 섹션 에 /etc/yum.conf
포함됩니다 .gpgcheck=1
[main]
답변1
귀하의 질문에는 설명이 필요합니다.
먼저, 함께 작업하는 방법을 이해하는 YUM
것이 중요합니다 rpm
.
rpm
RPM은 소프트웨어 패키지 형식이며 개별 RPM 패키지를 설치할 수 있는 비슷한 이름의 명령줄 도구가 있습니다 . 명령줄 도구 는 둘 다 종속성 없이 별도의 패키지를 설치한다는 점에서 명령줄 도구rpm
와 유사하다고 생각할 수 있습니다 .dpkg
yum
RPM 패키지와 해당 종속성을 설치하는 상위 수준 프로그램입니다.yum
이 명령은 와 유사하다고 생각 하면apt-get
둘 다 패키지와 모든 종속 항목을 설치합니다.- 런타임은
yum install
URL이 아닌 패키지 이름을 사용해야 합니다. 예:yum install package
, 실행 방법과 유사:apt-get install package
. - 패키지 URL이 있으면 작동
rpm -i https://url
하지만, 패키지의 종속성이 설치되어 있지 않으면rpm -i
(고통) 또는yum
구성된 저장소를 사용하여 하나씩 설치해야 합니다.
이제 GPG에 관한 한 데비안 및 RPM 패키징 시스템에 적용되는 몇 가지 알아야 할 사항이 있지만 가장 중요한 사항은 다음과 같습니다.
- 두 시스템 모두 2세트의 GPG 서명, 즉 패키지 자체의 GPG 서명과 저장소의 GPG 서명을 가지고 있습니다.
- Debian 패키지에는 GPG 서명이 확인되지 않으며 Ubuntu 및 Debian 프로젝트 리포지토리의 공식 패키지에는 GPG 서명이 없습니다.
- 두 시스템 모두 일반 텍스트 HTTP를 통해 사용될 때 다양한 GPG 재생 공격에 취약합니다. 패키지는 반드시 HTTPS를 통해 설치해야 합니다.아니요가능한 경우 일반 텍스트 HTTP입니다.
RPM 및 YUM GPG 서명의 경우:
gpgkey=https://example/gpg.key
먼저 다음 명령을 사용하여 구성 파일에서 GPG 키의 경로 또는 URL을 지정할 수 있습니다gpgkey=/usr/share/example/gpg.key
. GPG 키가 2개 이상 필요한 경우 여러 개를 지정할 수 있습니다.- 둘째, 두 가지 옵션이 있습니다:
gpgcheck=1
및repo_gpgcheck=1
. 첫 번째 옵션은yum install
패키지 자체의 GPG 서명을 확인하고, 두 번째 옵션은 저장소의 GPG 서명을 확인합니다. 이상적으로는 둘 다 사용해야 하지만 많은 저장소가 두 가지를 모두 지원하도록 올바르게 구성되지 않았습니다. - 처음 실행될 때
yum install
나열된 GPG 키를 아직 가져오지 않은 경우yum
가져오려고 시도합니다 .gpgkey
수락하거나 거절하라는 메시지가 표시됩니다. pygpgme
GPG 서명을 확인하려면 시스템에 이 패키지를 설치 해야 합니다 . 최신 버전의 RHEL 및 CentOS에서는pygpgme
종속성이 자동으로 설치되지만yum
시스템에 설치되어 있는지 확인해야 합니다.- 기본적으로 Can Talk over HTTPS
apt-transport-https
에 상응하는 기능 은 없지만 사용 중인 버전에 기본적으로 옵션이 활성화 되어 있는지 확인해야 합니다 . 귀하의 버전에 이 기능이 없으면 활성화로 설정해야 합니다. SSL 인증서를 확인하는 것이 중요합니다.yum
yum
sslverify
yum
패키지와 리포지토리 모두에 GPG 서명이 있더라도 리포지토리는 여전히 재생 공격에 취약합니다. 가능하면 HTTPS를 통해 리포지토리에 액세스해야 합니다. 한 가지 공격에 대한 간략한 설명은 악의적인 공격자가 특정 시간에 저장소 메타데이터 및 관련 GPG 서명의 스냅샷을 찍고 해당 메타데이터 및 서명을 요청하는 클라이언트에 재생하여 클라이언트가 업데이트된 패키지를 볼 수 없도록 할 수 있다는 것입니다. 메타데이터는 건드리지 않으므로 GPG 서명은 유효합니다. 그런 다음 공격자는 업데이트되지 않은 소프트웨어의 알려진 버그를 악용하여 컴퓨터를 공격할 수 있습니다. 패키지 관리자에 대한 공격에 대해 자세히 읽을 수 있습니다.이 종이.
나는 두 개의 광범위한 블로그 게시물을 썼습니다GPG 및 YUM/rpm또한GPG와 APT.
다른 질문이 있으시면 댓글을 남겨주세요. 패키지 관리는 올바르게 수행하기가 매우 어렵습니다.