Red Hat Training

A Red Hat training course is available for OpenShift Container Platform

3.9.4. イメージ署名サポートの有効化

OpenShift Container Platform は、イメージが信頼済みのソースのものかを暗号で確認することができます。『Container Security Guide』には、イメージ署名の仕組みの概要が記載されています。

atomic コマンドラインインターフェース (CLI) (バージョン 1.12.5 以降) を使用してイメージ署名の検証を設定できます。atomic CLI は RHEL Atomic Host システムにプリインストールされています。

注記

atomic CLI の詳細は、Atomic CLI についてのドキュメントを参照してください。

以下のファイルとディレクトリーは、ホストの信頼設定を構成しています。

  • /etc/containers/registries.d/*
  • /etc/containers/policy.json

信頼設定は、各ノードで直接管理するか、または個別のホストでファイルを管理でき、Ansible などを使用してそれらのファイルを適切なノードに配布できます。Ansible を使用したファイル配布の自動化の例については、『Container Image Signing Integration Guide』を参照してください。

  1. ホストシステムにインストールされていない場合は、atomic パッケージをインストールします。

    $ yum install atomic
  2. 現在の信頼設定を表示します。

    $ atomic trust show
    * (default)                         accept

    デフォルト設定はすべてのレジストリーをホワイトリストに入れます。 つまり、署名の検証は設定されません。

  3. 信頼設定をカスタマイズします。以下の例では、1 つのレジストリーまたは namespaceをホワイトリストに入れ、信頼されていないレジストリーをブラックリストに入れ (拒否) ます。 これには、ベンダーレジストリーでの署名の検証が必要になります。

    $ atomic trust add --type insecureAcceptAnything 172.30.1.1:5000
    
    $ atomic trust add --sigstoretype atomic \
      --pubkeys pub@example.com \
      172.30.1.1:5000/production
    
    $ atomic trust add --sigstoretype atomic \
      --pubkeys /etc/pki/example.com.pub \
      172.30.1.1:5000/production
    
    $ atomic trust add --sigstoretype web \
      --sigstore https://access.redhat.com/webassets/docker/content/sigstore \
      --pubkeys /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release \
      registry.redhat.io
    
    # atomic trust show
    * (default)                         accept
    172.30.1.1:5000                     accept
    172.30.1.1:5000/production          signed security@example.com
    registry.redhat.io                  signed security@redhat.com,security@redhat.com
  4. グローバル reject デフォルト信頼を追加してノードをさらに強化できます。

    $ atomic trust default reject
    
    $ atomic trust show
    * (default)                         reject
    172.30.1.1:5000                     accept
    172.30.1.1:5000/production          signed security@example.com
    registry.redhat.io                  signed security@redhat.com,security@redhat.com
  5. オプションで、詳細のオプションについて atomic man ページ man atomic-trust を確認します。