6.11. 在 FIPS 模式下创建并引导 RHEL for Edge 镜像
您可以创建并引导启用了 FIPS 的 RHEL for Edge 镜像。在编写镜像前,您必须更改蓝图中 fips
指令的值。
您可以在 FIPS 模式下构建以下镜像类型:
-
edge-installer
-
edge-simplified-installer
-
edge-raw-image
-
edge-ami
-
edge-vsphere
您只能在镜像置备过程中启用 FIPS 模式。在非 FIPS 镜像构建启动后,您无法切换到 FIPS 模式。如果构建启用了 FIPS 的镜像的主机没有启用 FIPS,则此主机生成的任何密钥都不兼容 FIPS,但生成的镜像与 FIPS 兼容。
先决条件
- 您创建并下载了一个 RHEL for Edge Container OSTree 提交。
- 已在您的系统上安装了 Podman。请参阅红帽知识库解决方案 如何在 RHEL 中安装 Podman。
-
您以 root 用户身份登录,或者作为
weldr
组的成员的用户身份登录。
流程
使用以下内容,创建一个 Tom's Obvious, Minimal Language (TOML)格式的纯文本文件:
name = "system-fips-mode-enabled" description = "blueprint with FIPS enabled " version = "0.0.1" [ostree] ref= "example/edge" url= "http://example.com/repo" [customizations] installation_device = "/dev/vda" fips = true [[customizations.user]] name = "admin" password = "admin" groups = ["users", "wheel"] [customizations.fdo] manufacturing_server_url = "https://fdo.example.com" diun_pub_key_insecure = true
将蓝图导入到 RHEL 镜像构建器服务器中:
# composer-cli blueprints push <blueprint-name>.toml
列出现有的蓝图,以检查创建的蓝图是否已成功导入且存在:
# composer-cli blueprints show <blueprint-name>
检查蓝图中列出的组件和版本是否有效:
# composer-cli blueprints depsolve <blueprint-name>
-
提供要嵌入到镜像中的提交的 OSTree 存储库,例如
http://10.0.2.2:8080/repo
。如需更多信息,请参阅 建立一个 UEFI HTTP 引导服务器。 创建可引导的 ISO 镜像:
# composer-cli compose start-ostree \ <blueprint-name> \ edge-simplified-installer \ --ref rhel/8/x86_64/edge \ --url <URL-OSTree-repository> \
查看 RHEL for Edge 镜像状态:
# composer-cli compose status … $ <UUID> FINISHED <date> <blueprint-name> <blueprint-version> <image-type> …
下载镜像:
# composer-cli compose image <UUID>
RHEL 镜像构建器将镜像作为
.iso
文件下载到当前目录路径。UUID 号和镜像大小会同时显示:$ <UUID>-simplified-installer.iso: <size> MB
从 UEFI HTTP Boot 服务器创建 RHEL for Edge 虚拟机,例如:
# virt-install \ --name edge-device --disk path="/var/lib/libvirt/images/edge-device.qcow2",size=5,format=qcow2 \ --memory 4096 \ --vcpus 2 \ --network network=default \ --os-type linux \ --os-variant rhel8.9 \ --cdrom /var/lib/libvirt/images/<UUID>-simplified-installer.iso \ --boot uefi,loader.secure=false \ --virt-type kvm \ --graphics none \ --wait=-1 \ --noreboot
输入命令后,虚拟机安装将启动。
验证
- 使用您在蓝图中配置的用户名和密码登录到创建的虚拟机。
检查是否启用了 FIPS 设置:
$ cat /proc/sys/crypto/fips_enabled 1