4.9. RPM 패키지에 서명
다음 소프트웨어 중 하나를 사용하여 타사에서 콘텐츠를 변경할 수 없도록 RPM 패키지에 서명할 수 있습니다.
- Sequoia PGP는 OpenPGP 표준을 지원합니다. RPM은 Sequoia PGP를 사용하여 소프트웨어 서명을 확인합니다.
- GNU Privacy Guard(GnuPG)는 이전 OpenPGP 표준 버전을 지원하므로 GnuPG가 RHEL 9 및 이전 버전과 보다 호환됩니다.
새로운 알고리즘과 서명이 이전 RHEL 버전과 호환되지 않을 수 있습니다.
4.9.1. GnuPG를 사용하여 RPM 패키지에 서명 링크 복사링크가 클립보드에 복사되었습니다!
GNU Privacy Guard(GnuPG) 소프트웨어를 사용하여 RPM 패키지에 서명할 수 있습니다.
4.9.1.1. GnuPG를 사용하여 패키지에 서명하기 위한 OpenPGP 키 생성 링크 복사링크가 클립보드에 복사되었습니다!
GNU Privacy Guard(GnuPG) 소프트웨어를 사용하여 RPM 패키지에 서명하려면 먼저 OpenPGP 키를 생성해야 합니다.
사전 요구 사항
-
rpm-sign및pinentry패키지가 시스템에 설치되어 있습니다.
프로세스
OpenPGP 키 쌍을 생성합니다.
gpg --gen-key
$ gpg --gen-keyCopy to Clipboard Copied! Toggle word wrap Toggle overflow 생성된 키 쌍을 확인합니다.
gpg --list-keys
$ gpg --list-keysCopy to Clipboard Copied! Toggle word wrap Toggle overflow 공개 키를 내보냅니다.
gpg --export -a '<public_key_name>' > RPM-GPG-KEY-pmanager
$ gpg --export -a '<public_key_name>' > RPM-GPG-KEY-pmanagerCopy to Clipboard Copied! Toggle word wrap Toggle overflow
4.9.1.2. GnuPG로 패키지에 서명하도록 RPM 구성 링크 복사링크가 클립보드에 복사되었습니다!
GNU Privacy Guard(GnuPG) 소프트웨어를 사용하여 RPM 패키지에 서명하려면 %_gpg_name RPM 매크로를 지정하여 RPM을 구성해야 합니다.
사전 요구 사항
- GnuPG에 대한 OpenPGP 키를 생성했습니다. 자세한 내용은 GnuPG를 사용하여 패키지 서명에 대한 OpenPGP 키 생성을 참조하십시오.
프로세스
$HOME/.rpmmacros디렉토리에%_gpg_name매크로를 정의합니다.%_gpg_name <key-ID>
%_gpg_name <key-ID>Copy to Clipboard Copied! Toggle word wrap Toggle overflow GnuPG의 유효한 키 ID 값은 키를 생성할 때 제공한 키 지문, 전체 이름 또는 이메일 주소일 수 있습니다.
4.9.1.3. RPM 패키지에 서명 추가 링크 복사링크가 클립보드에 복사되었습니다!
패키지는 일반적으로 서명 없이 빌드됩니다. 패키지가 릴리스되기 전에 서명을 추가할 수 있습니다.
사전 요구 사항
- GnuPG에 대한 OpenPGP 키를 생성했습니다. 자세한 내용은 GnuPG를 사용하여 패키지 서명에 대한 OpenPGP 키 생성을 참조하십시오.
- 패키지에 서명하기 위해 RPM을 구성했습니다. 자세한 내용은 GnuPG를 사용하여 패키지에 서명하도록 RPM 구성을 참조하십시오.
-
rpm-sign패키지가 시스템에 설치되어 있습니다.
프로세스
패키지에 서명을 추가합니다.
rpmsign --addsign <package-name>.rpm
$ rpmsign --addsign <package-name>.rpmCopy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
내보낸 OpenPGP 공개 키를 RPM 인증 키로 가져옵니다.
rpmkeys --import RPM-GPG-KEY-pmanager
# rpmkeys --import RPM-GPG-KEY-pmanagerCopy to Clipboard Copied! Toggle word wrap Toggle overflow GnuPG를 사용하여 키 ID를 표시합니다.
gpg --list-keys
$ gpg --list-keys [...] pub rsa3072 2025-05-13 [SC] [expires: 2028-05-12] A8AF1C39AC67A1501450734F6DE8FC866DE0394D [...]Copy to Clipboard Copied! Toggle word wrap Toggle overflow 키 ID는 명령 출력의 40자 문자열입니다(예:
A8AF1C39AC67A1501450734F6DE8FC866DE0394D).RPM 파일에 해당 서명이 있는지 확인합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 서명 키 ID는 OpenPGP 키 ID의 마지막 부분과 일치합니다.
4.9.2. Sequoia PGP를 사용하여 RPM 패키지에 서명 링크 복사링크가 클립보드에 복사되었습니다!
Sequoia PGP를 사용하여 RPM 패키지에 서명하고 타사가 콘텐츠를 변경할 수 없도록 할 수 있습니다.
4.9.2.1. Sequoia PGP를 사용하여 패키지에 서명하기 위한 OpenPGP 키 생성 링크 복사링크가 클립보드에 복사되었습니다!
Sequoia PGP 소프트웨어를 사용하여 패키지에 서명하려면 먼저 OpenPGP 키를 생성해야 합니다.
프로세스
Sequoia PGP 도구를 설치합니다.
dnf install sequoia-sq
# dnf install sequoia-sqCopy to Clipboard Copied! Toggle word wrap Toggle overflow OpenPGP 키 쌍을 생성합니다.
sq key generate --own-key --userid <key_name>
$ sq key generate --own-key --userid <key_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 생성된 키 쌍을 확인합니다.
sq key list
$ sq key listCopy to Clipboard Copied! Toggle word wrap Toggle overflow 공개 키를 내보냅니다.
sq cert export --cert-userid '<key_name>' > RPM-PGP-KEY-pmanager
$ sq cert export --cert-userid '<key_name>' > RPM-PGP-KEY-pmanagerCopy to Clipboard Copied! Toggle word wrap Toggle overflow
4.9.2.2. Sequoia PGP로 패키지에 서명하도록 RPM 구성 링크 복사링크가 클립보드에 복사되었습니다!
Sequoia PGP 소프트웨어를 사용하여 RPM 패키지에 서명하려면 Sequoia PGP를 사용하고 %_gpg_name 매크로를 지정하도록 RPM을 구성해야 합니다.
사전 요구 사항
-
rpm-sign패키지가 시스템에 설치되어 있습니다.
프로세스
macros.rpmsign-sequoia파일을/etc/rpm디렉터리에 복사합니다.cp /usr/share/doc/rpm/macros.rpmsign-sequoia /etc/rpm/
# cp /usr/share/doc/rpm/macros.rpmsign-sequoia /etc/rpm/Copy to Clipboard Copied! Toggle word wrap Toggle overflow 키 목록 출력에서 유효한 OpenPGP 키 지문 값을 가져옵니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 키 지문은 출력의 첫 번째 줄에 있는 40자 문자열입니다(예:
7E4B52101EB3DB08967A1E595D12FDA65BA50).다음과 같이
$HOME/.rpmmacros파일에%_gpg_name매크로를 정의합니다.%_gpg_name <key_fingerprint>
%_gpg_name <key_fingerprint>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 지문 대신 전체 키 ID를 사용할 수도 있습니다.
참고GnuPG와 달리 Sequoia PGP는 전체 키 ID 또는 지문만 허용합니다.
4.9.2.3. RPM 패키지에 서명 추가 링크 복사링크가 클립보드에 복사되었습니다!
패키지는 일반적으로 서명 없이 빌드됩니다. 패키지가 릴리스되기 전에 서명을 추가할 수 있습니다.
사전 요구 사항
- OpenPGP 키를 생성했습니다. 자세한 내용은 Sequoia PGP를 사용하여 패키지에 서명하기 위한 OpenPGP 키 생성 을 참조하십시오.
- 패키지에 서명하기 위해 RPM을 구성했습니다. 자세한 내용은 Sequoia PGP 로 패키지에 서명하도록 RPM 구성을 참조하십시오.
-
rpm-sign패키지가 시스템에 설치되어 있습니다.
프로세스
패키지에 서명을 추가합니다.
rpmsign --addsign <package-name>.rpm
$ rpmsign --addsign <package-name>.rpmCopy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
내보낸 OpenPGP 공개 키를 RPM 인증 키로 가져옵니다.
rpmkeys --import RPM-PGP-KEY-pmanager
# rpmkeys --import RPM-PGP-KEY-pmanagerCopy to Clipboard Copied! Toggle word wrap Toggle overflow 서명 키의 키 지문을 표시합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 키 지문은 일반적으로
sq 키 목록 --cert-userid < key_name> 명령 출력의 서명 하위 키입니다(예:E0BD231AB350AD6802D44C0A270E79FFC3B25).RPM 파일에 해당 서명이 있는지 확인합니다. 예를 들면 다음과 같습니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 서명 키 ID는 키 지문의 마지막 부분과 일치합니다.