$ oc adm release extract --registry-config "${pullsecret_file}" --command=openshift-install-fips --to "${extract_dir}" ${RELEASE_IMAGE}
您可以以 FIPS 模式安装 OpenShift Container Platform 集群。
OpenShift Container Platform 专为 FIPS 设计。在 FIPS 模式下启动 Red Hat Enterprise Linux (RHEL) 或 Red Hat Enterprise Linux CoreOS (RHCOS) 时,OpenShift Container Platform 核心组件仅在 x86_64、ppc64le 和 s390x 架构上使用已提交给 NIST 进行 FIPS 140-2/140-3 验证的 RHEL 加密库。
要为您的集群启用 FIPS 模式,您必须从配置为在 FIPS 模式下运行的 RHEL 9 计算机运行安装程序,并且必须使用支持 FIPS 的安装程序版本。请参阅标题为“使用`oc adm extract`获取支持 FIPS 的安装程序”的部分。 有关在 RHEL 上配置 FIPS 模式的更多信息,请参阅在 FIPS 模式下安装系统。 |
对于集群中的 Red Hat Enterprise Linux CoreOS (RHCOS) 机器,此更改会在根据install-config.yaml
文件中的选项状态部署机器时应用,该文件控制用户在集群部署期间可以更改的集群选项。对于 Red Hat Enterprise Linux (RHEL) 机器,您必须在计划用作工作机器的机器上安装操作系统时启用 FIPS 模式。
因为必须在集群使用的操作系统首次启动之前启用 FIPS,所以您不能在部署集群后启用 FIPS。
oc adm extract
获取支持 FIPS 的安装程序OpenShift Container Platform 要求使用支持 FIPS 的安装二进制文件才能在 FIPS 模式下安装集群。您可以使用 OpenShift CLI (oc
) 从发行版镜像中提取此二进制文件。获得二进制文件后,继续进行集群安装,将所有openshift-install
命令实例替换为openshift-install-fips
。
您已安装版本 4.16 或更高版本的 OpenShift CLI (oc
)。
通过运行以下命令从安装程序中提取支持 FIPS 的二进制文件
$ oc adm release extract --registry-config "${pullsecret_file}" --command=openshift-install-fips --to "${extract_dir}" ${RELEASE_IMAGE}
其中
<pullsecret_file>
指定包含您的拉取密钥的文件名。
<extract_dir>
指定要提取二进制文件的目录。
<RELEASE_IMAGE>
指定您正在使用的 OpenShift Container Platform 发行版的 Quay.io URL。有关查找发行版镜像的更多信息,请参阅“提取 OpenShift Container Platform 安装程序”。
继续进行集群安装,将所有openshift-install
命令实例替换为openshift-install-fips
。
OpenShift Container Platform 要求使用支持 FIPS 的安装二进制文件才能在 FIPS 模式下安装集群。您可以从公共 OpenShift 镜像下载此二进制文件。获得二进制文件后,继续进行集群安装,将所有openshift-install
二进制文件实例替换为openshift-install-fips
。
您可以访问互联网。
提取安装程序。例如,在使用 Linux 操作系统的计算机上,运行以下命令
$ tar -xvf openshift-install-rhel9-amd64.tar.gz
继续进行集群安装,将所有openshift-install
命令实例替换为openshift-install-fips
。
OpenShift Container Platform 使用 RHEL 和 RHCOS 中经过 FIPS 验证或正在处理中的模块来运行其操作系统组件。详情请参见 RHEL 核心加密组件。例如,当用户使用 SSH 连接到 OpenShift Container Platform 集群和容器时,这些连接会得到正确的加密。
OpenShift Container Platform 组件是用 Go 编写的,并使用 Red Hat 的 golang 编译器构建。启用集群的 FIPS 模式后,所有需要加密签名的 OpenShift Container Platform 组件都会调用 RHEL 和 RHCOS 加密库。
属性 | 限制 |
---|---|
RHEL 9 和 RHCOS 操作系统中的 FIPS 支持。 |
FIPS 实现不使用单步执行哈希计算和签名生成或验证的功能。此限制将在未来的 OpenShift Container Platform 版本中持续评估和改进。 |
CRI-O 运行时中的 FIPS 支持。 |
|
OpenShift Container Platform 服务中的 FIPS 支持。 |
|
从 RHEL 9 和 RHCOS 二进制文件和镜像中获得的经过 FIPS 验证或正在处理中的加密模块和算法。 |
|
使用与 FIPS 兼容的 golang 编译器。 |
TLS FIPS 支持尚不完整,但计划在未来的 OpenShift Container Platform 版本中实现。 |
跨多个架构的 FIPS 支持。 |
目前,FIPS 仅支持使用 |
尽管 OpenShift Container Platform 集群本身使用经过 FIPS 验证或正在处理中的模块,但请确保支持 OpenShift Container Platform 集群的系统使用经过 FIPS 验证或正在处理中的模块进行加密。
为了确保存储在 etcd 中的密钥使用经过 FIPS 验证或正在处理中的加密,请在 FIPS 模式下启动节点。在 FIPS 模式下安装集群后,您可以使用 FIPS 批准的 aes cbc
加密算法 加密 etcd 数据。
对于本地存储,请使用 RHEL 提供的磁盘加密或使用 RHEL 提供的磁盘加密的 Container Native Storage。通过将所有数据存储在使用 RHEL 提供的磁盘加密的卷中并为集群启用 FIPS 模式,静态数据和动态数据(或网络数据)都将受到经过 FIPS 验证或正在处理中的加密的保护。您可以按照 自定义节点 中的说明配置集群以加密每个节点的根文件系统。
要在 FIPS 模式下安装集群,请按照说明在您首选的基础架构上安装自定义集群。在部署集群之前,请确保在 install-config.yaml
文件中设置 fips: true
。
要为集群启用 FIPS 模式,必须从配置为在 FIPS 模式下运行的 RHEL 计算机运行安装程序。有关在 RHEL 上配置 FIPS 模式的更多信息,请参见 在 FIPS 模式下安装系统。 |
如果使用 Azure 文件存储,则无法启用 FIPS 模式。 |
要将 AES CBC
加密应用于您的 etcd 数据存储,请在安装集群后按照 加密 etcd 数据 过程操作。
如果将 RHEL 节点添加到集群,请确保在首次启动之前在计算机上启用 FIPS 模式。请参见 将 RHEL 计算机器添加到 OpenShift Container Platform 集群 和 在 FIPS 模式下安装系统。