14.4. 为 control plane 配置 TLS 安全配置集


要为 control plane 配置 TLS 安全配置集,请编辑 APIServer 自定义资源(CR)来指定预定义或自定义 TLS 安全配置集。在 APIServer CR 中设置 TLS 安全配置集将设置传播到以下 control plane 组件:

  • Kubernetes API 服务器
  • Kubernetes 控制器管理器
  • Kubernetes 调度程序
  • OpenShift API 服务器
  • OpenShift OAuth API 服务器
  • OpenShift OAuth 服务器
  • etcd
  • Machine Config Operator
  • 机器配置服务器

如果没有配置 TLS 安全配置集,则默认 TLS 安全配置集为 Intermediate

注意

Ingress Controller 的默认 TLS 安全配置集基于为 API 服务器设置的 TLS 安全配置集。

配置 Old TLS 安全配置集的 APIServer CR 示例

apiVersion: config.openshift.io/v1
kind: APIServer
 ...
spec:
  tlsSecurityProfile:
    old: {}
    type: Old
 ...

TLS 安全配置集定义与 control plane 组件通信的最低 TLS 版本和所需的 TLS 密码。

您可以在 Spec.Tls Security Profile 下的 APIServer 自定义资源(CR)中看到配置的 TLS 安全配置集。对于 Custom TLS 安全配置集,会列出特定的密码和最小 TLS 版本。

先决条件

  • 您可以使用具有 cluster-admin 角色的用户访问集群。

流程

  1. 编辑默认 APIServer CR 以配置 TLS 安全配置集:

    $ oc edit APIServer cluster
  2. 添加 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

    1
    指定 TLS 安全配置集类型(OldIntermediateCustom)。默认值为 Intermediate
    2
    为所选类型指定适当的字段:
    • old: {}
    • intermediate: {}
    • modern: {}
    • custom:
    3
    对于 custom 类型,请指定 TLS 密码列表和最低接受的 TLS 版本。
  3. 保存文件以使改变生效。

验证

  • 验证 APIServer CR 中是否设置了 TLS 安全配置集:

    $ 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
     ...

  • 验证 TLS 安全配置集是否在 Machine Config Server pod 中设置:

    $ oc logs machine-config-server-5msdv -n openshift-machine-config-operator

    输出示例

    # ...
    I0905 13:48:36.968688       1 start.go:51] Launching server with tls min version: VersionTLS12 & 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]
    # ...

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部