10.4. コントロールプレーンの TLS セキュリティープロファイルの設定
コントロールプレーンの TLS セキュリティープロファイルを設定するには、APIServer
カスタムリソース (CR) を編集して、事前定義済みまたはカスタムの TLS セキュリティープロファイルを指定します。APIServer
CR に TLS セキュリティープロファイルを設定すると、設定は以下のコントロールプレーンのコンポーネントに伝播されます。
- Kubernetes API サーバー
- Kubernetes コントローラーマネージャー
- Kubernetes スケジューラー
- OpenShift API サーバー
- OpenShift OAuth API サーバー
- OpenShift OAuth サーバー
- etcd
TLS セキュリティープロファイルが設定されていない場合には、TLS セキュリティープロファイルは Intermediate
になります。
Ingress コントローラーのデフォルトの TLS セキュリティープロファイルは API サーバーの TLS セキュリティープロファイルに基づいています。
Old
TLS のセキュリティープロファイルを設定するサンプル APIServer
CR
apiVersion: config.openshift.io/v1 kind: APIServer ... spec: tlsSecurityProfile: old: {} type: Old ...
TLS セキュリティープロファイルは、コントロールプレーンのコンポーネントとの通信に必要な TLS の最小バージョンと TLS 暗号を定義します。
設定した TLS セキュリティープロファイルは、Spec.Tls Security Profile
の APIServer
カスタムリソース (CR) で確認できます。Custom
TLS セキュリティープロファイルの場合には、特定の暗号と最小 TLS バージョンが一覧表示されます。
コントロールプレーンは、最小 TLS バージョンとして TLS 1.3
をサポートしません。Modern
プロファイルは TLS 1.3
を必要とするため、サポート対象外です。
前提条件
-
cluster-admin
ロールを持つユーザーとしてクラスターにアクセスできる。
手順
デフォルトの
APIServer
CR を編集して TLS セキュリティープロファイルを設定します。$ oc edit APIServer cluster
spec.tlsSecurityProfile
フィールドを追加します。Custom
プロファイルのAPIServer
CR のサンプルapiVersion: config.openshift.io/v1 kind: APIServer metadata: name: cluster spec: tlsSecurityProfile: type: Custom 1 custom: 2 ciphers: 3 - ECDHE-ECDSA-CHACHA20-POLY1305 - ECDHE-RSA-CHACHA20-POLY1305 - ECDHE-RSA-AES128-GCM-SHA256 - ECDHE-ECDSA-AES128-GCM-SHA256 minTLSVersion: VersionTLS11
- 変更を適用するためにファイルを保存します。
検証
TLS セキュリティープロファイルが
APIServer
CR に設定されていることを確認します。$ oc describe apiserver cluster
出力例
Name: cluster Namespace: ... API Version: config.openshift.io/v1 Kind: APIServer ... Spec: Audit: Profile: Default Tls Security Profile: Custom: Ciphers: ECDHE-ECDSA-CHACHA20-POLY1305 ECDHE-RSA-CHACHA20-POLY1305 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-ECDSA-AES128-GCM-SHA256 Min TLS Version: VersionTLS11 Type: Custom ...
TLS セキュリティープロファイルが
etcd
CR に設定されていることを確認します。$ oc describe etcd cluster
出力例
Name: cluster Namespace: ... API Version: operator.openshift.io/v1 Kind: Etcd ... Spec: Log Level: Normal Management State: Managed Observed Config: Serving Info: Cipher Suites: TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 Min TLS Version: VersionTLS12 ...