GitLab Helm 차트 출처
GitLab Helm 차트의 무결성과 출처는 Helm provenance를 사용하여 확인할 수 있습니다.
GitLab Helm 차트는 GNUPG 키 쌍으로 서명됩니다. 키 쌍의 공개 부분은 차트를 확인하기 전에 다운로드하고 필요에 따라 내보내야 합니다. GNU Privacy Handbook에는 GPG 키를 관리하는 방법에 대한 자세한 지침이 안내되어 있습니다.
GitLab Helm 차트 서명 키 다운로드 및 내보내기
공식 GitLab Helm 차트 공개 서명 키를 사용하여 GitLab Helm 차트의 출처를 확인해야 합니다. 먼저 키를 다운로드한 다음 로컬 키링으로 내보내야 합니다.
공개 서명 키 다운로드
공식 GitLab Helm 차트 서명 키를 다운로드하려면 다음을 실행하세요:
gpg --receive-keys --keyserver hkps://keys.openpgp.org '5E46F79EF5836E986A663B4AE30F9C687683D663'
예시:
$ gpg --receive-keys --keyserver hkps://keys.openpgp.org '5E46F79EF5836E986A663B4AE30F9C687683D663'
gpg: key E30F9C687683D663: public key "GitLab, Inc. Helm charts <distribution@gitlab.com>" imported
gpg: Total number processed: 1
gpg: imported: 1
이 명령은 키를 다운로드하고 기본 키링에 추가합니다. GitLab Helm 차트 서명 키를 별도의 키링에 넣어야 합니다. --no-default-keyring --keyring <keyring>
gpg
옵션을 사용하여 GitLab 차트 서명 키만 포함된 새로운 키링을 만들 수 있습니다.
예시:
$ gpg --keyring $HOME/.gnupg/gitlab.pubring.kbx --keyserver hkps://keys.openpgp.org --no-default-keyring --receive-keys '5E46F79EF5836E986A663B4AE30F9C687683D663'
gpg: keybox '$HOME/.gnupg/gitlab.pubring.kbx' created
gpg: key E30F9C687683D663: public key "GitLab, Inc. Helm charts <distribution@gitlab.com>" imported
gpg: Total number processed: 1
gpg: imported: 1
서명 키 내보내기
기본적으로 GnuPG v2는 Helm 차트 출처 확인과 호환되지 않는 형식으로 키링을 저장합니다. 차트를 확인할 수 있도록 키링을 먼저 기존 형식으로 내보내야 합니다. 적절한 형식으로 키링을 내보내려면 다음 중 하나를 수행하세요:
-
기본 키링에서 내보내기:
gpg --export --output gitlab.pubring.gpg '5E46F79EF5836E986A663B4AE30F9C687683D663'
-
별도 키링에서 키 내보내기를 위해
--no-default-keyring --keyring <keyring>
옵션 사용:gpg --export --output $HOME/.gnupg/gitlab.pubring.gpg --keyring $HOME/.gnupg/gitlab.pubring.kbx --no-default-keyring '5E46F79EF5836E986A663B4AE30F9C687683D663'
차트 확인
GitLab Helm 차트는 다음 중 하나를 사용하여 확인할 수 있습니다:
- 차트를 다운로드하고
helm verify
를 실행함. - 차트 설치 중
--verify
옵션 사용.
다운로드한 차트 확인
helm verify
명령을 사용하여 다운로드한 차트를 확인할 수 있습니다. 확인 가능한 차트를 다운로드하려면 helm pull --prov
명령을 사용하세요. 예시:
helm pull --prov gitlab/gitlab
--version
옵션을 사용하여 특정 차트 버전을 다운로드할 수 있습니다. 예시:
helm pull --prov gitlab/gitlab --version 7.9.0
그런 다음 helm verify
명령을 사용하여 다운로드한 차트를 확인할 수 있습니다.
예시:
helm verify --keyring $HOME/.gnupg/gitlab.pubring.gpg gitlab-7.9.0.tgz
Signed by: GitLab, Inc. Helm charts <distribution@gitlab.com>
Using Key With Fingerprint: 5E46F79EF5836E986A663B4AE30F9C687683D663
Chart Hash Verified: sha256:789ec56d929c7ec403fc05249639d0c48ff6ab831f90db7c6ac133534d0aba19
--verify
옵션을 helm pull
명령과 함께 사용하여 pull 및 verify 명령을 결합할 수 있습니다.
예시:
helm pull --prov gitlab/gitlab --verify --keyring $HOME/.gnupg/gitlab.pubring.gpg
Signed by: GitLab, Inc. Helm charts <distribution@gitlab.com>
Using Key With Fingerprint: 5E46F79EF5836E986A663B4AE30F9C687683D663
Chart Hash Verified: sha256:789ec56d929c7ec403fc05249639d0c48ff6ab831f90db7c6ac133534d0aba19
설치 중 차트 확인
helm install
또는 helm upgrade
명령에 --verify
옵션을 사용하여 설치 중 차트를 확인할 수 있습니다.
-
예시,
helm install
:helm install --verify --keyring $HOME/.gnupg/gitlab.pubring.gpg gitlab gitlab/gitlab --set certmanager-issuer.email=<me@example.com> --set global.hosts.domain=<example.com>
-
예시,
helm upgrade
:helm upgrade --install --verify --keyring $HOME/.gnupg/gitlab.pubring.gpg gitlab gitlab/gitlab --set certmanager-issuer.email=<me@example.com> --set global.hosts.domain=<example.com>