10.2. カスタム seccomp プロファイルの設定
カスタム seccomp プロファイルを設定すると、アプリケーション要件に基づいてフィルターを更新できます。これにより、クラスター管理者は OpenShift Container Platform で実行されるワークロードのセキュリティーをより詳細に制御できます。
10.2.1. カスタム seccomp プロファイルのセットアップ
前提条件
- クラスター管理者パーミッションがある。
- カスタム SCC(Security Context Constraints) を作成している。詳細は、関連情報を参照してください。
- カスタム seccomp プロファイルを作成している。
手順
-
Machine Config を使用してカスタム seccomp プロファイルを
/var/lib/kubelet/seccomp/<custom-name>.json
にアップロードします。詳細な手順については、関連情報を参照してください。 作成されたカスタム 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 で必要な他の条件を満たす必要があります。