5장. 고급 주제
이 섹션에서는 소개 튜토리얼의 범위를 벗어나지만 실제적인 RPM 패키지에 유용한 주제를 다룹니다.
5.1. RPM 패키지 서명
RPM 패키지에 서명하여 타사가 콘텐츠를 변경할 수 없도록 할 수 있습니다. 추가 보안 계층을 추가하려면 패키지를 다운로드할 때 HTTPS 프로토콜을 사용합니다.
rpm-sign
패키지에서 제공하는 --addsign
옵션을 사용하여 패키지에 서명할 수 있습니다.
사전 요구 사항
- GPG 키 생성에 설명된 대로 GPG(GG) 키를 생성했습니다.
5.1.1. GPG 키 생성
다음 절차에 따라 패키지에 서명하는 데 필요한 GNU 개인 정보 보호 보호 (GPG) 키를 만듭니다.
절차
GPG 키 쌍을 생성합니다.
# gpg --gen-key
생성된 키 쌍을 확인합니다.
# gpg --list-keys
공개 키를 내보냅니다.
# gpg --export -a '<Key_name>' > RPM-GPG-KEY-pmanager
<Key_name>을 선택한 실제 키 이름으로 바꿉니다.
내보낸 공개 키를 RPM 데이터베이스로 가져옵니다.
# rpm --import RPM-GPG-KEY-pmanager
5.1.2. 패키지에 서명하도록 RPM 구성
RPM 패키지에 서명하려면 %_gpg_name
RPM 매크로를 지정해야 합니다.
다음 절차에서는 패키지에 서명하기 위해 RPM을 구성하는 방법을 설명합니다.
절차
$HOME/.rpmmacros
파일에서%_gpg_name
매크로를 다음과 같이 정의합니다.%_gpg_name Key ID
키 ID 를 패키지에 서명하는 데 사용할 GNU GPG(GPG) 키 ID로 바꿉니다. 유효한 GPG 키 ID 값은 키를 생성한 사용자의 전체 이름 또는 이메일 주소입니다.
5.1.3. RPM 패키지에 서명 추가
가장 일반적인 경우는 서명 없이 패키지를 빌드하는 경우입니다. 서명은 패키지를 릴리스하기 직전에 추가됩니다.
RPM 패키지에 서명을 추가하려면 rpm-sign
패키지에서 제공하는 --addsign
옵션을 사용합니다.
절차
패키지에 서명을 추가합니다.
$ rpm --addsign package-name.rpm
package-name 을 서명하려는 RPM 패키지의 이름으로 바꿉니다.
참고서명의 시크릿 키 잠금을 해제하려면 암호를 입력해야 합니다.