10.2. カスタム seccomp プロファイルの設定

カスタム seccomp プロファイルを設定すると、アプリケーション要件に基づいてフィルターを更新できます。これにより、クラスター管理者は OpenShift Container Platform で実行されるワークロードのセキュリティーをより詳細に制御できます。

10.2.1. カスタム seccomp プロファイルのセットアップ

前提条件

  • クラスター管理者パーミッションがある。
  • カスタム SCC(Security Context Constraints) を作成している。詳細は、関連情報を参照してください。
  • カスタム seccomp プロファイルを作成している。

手順

  1. Machine Config を使用してカスタム seccomp プロファイルを /var/lib/kubelet/seccomp/<custom-name>.json にアップロードします。詳細な手順については、関連情報を参照してください。
  2. 作成されたカスタム seccomp プロファイルへの参照を指定してカスタム SCC を更新します。

    seccompProfiles:
    - localhost/<custom-name>.json 1
    1
    カスタム seccomp プロファイルの名前を入力します。

10.2.2. カスタム seccomp プロファイルのワークロードへの適用

前提条件

  • クラスター管理者はカスタム seccomp プロファイルを設定している。詳細は、カスタム seccomp プロファイルの設定を参照してください。

手順

  • securityContext.seccompProfile.type フィールドを次のように設定して、seccomp プロファイルをワークロードに適用します。

    spec:
      securityContext:
        seccompProfile:
          type: Localhost
          localhostProfile: <custom-name>.json 1

    1
    カスタム seccomp プロファイルの名前を入力します。

    または、Pod アノテーション seccomp.security.alpha.kubernetes.io/pod: localhost/<custom-name>.json を使用できます。ただし、この手法は OpenShift Container Platform 4.6 では非推奨です。

デプロイメント時に、受付コントローラーは以下を検証します。

  • 現在の SCC に対するアノテーションがユーザーロールで許可されている。
  • seccomp プロファイルを含む SCC が Pod で許可されている。

SCC が Pod で許可される場合には、kubelet は指定された seccomp プロファイルで Pod を実行します。

重要

seccomp プロファイルがすべてのワーカーノードにデプロイされていることを確認します。

注記

カスタム SCC は、Pod に適切な優先順位で自動的に割り当てられるか、または CAP_NET_ADMIN を許可するなど、Pod で必要な他の条件を満たす必要があります。