11.2. 自定义强化的可引导镜像
您可以使用 oscap-im 工具将自定义配置文件应用到可引导镜像。您可以通过更改某些规则中的参数(如最小密码长度、删除以不同方式涵盖的规则以及选择附加规则)来自定义安全配置文件,以实施内部策略。您不能通过自定义配置文件来定义新规则。
先决条件
-
container-tools元数据软件包已安装。 - 您有一个用于配置文件的自定义文件。如需更多信息,请参阅 使用 autotailor 自定义安全配置文件。
流程
创建
Containerfile:FROM quay.io/<namespace>/<image>:latest # Copy a tailoring file into the Containerfile COPY tailoring.xml /usr/share/ # Install OpenSCAP scanner and security content to the image RUN dnf install -y openscap-utils scap-security-guide && dnf clean all # Add sudo user 'admin' with password 'admin123'. # The user can be used with profiles that prevent # ssh root logins. RUN useradd -G wheel -p "\$6\$Ga6Zn IlytrWpuCzO\$q0LqT1USHpahzUafQM9jyHCY9BiE5/ahXLNWUMiVQnFGblu0WWGZ1e6icTaCGO4GNgZNtspp1Let/qpM7FMVB0" admin # Run scan and hardening including the tailoring file RUN oscap-im --tailoring-file /usr/share/tailoring.xml --profile stig_customized /usr/share/xml/scap/ssg/content/ssg-rhel10-ds.xml这个
Containerfile执行以下任务:- 将定制文件注入到您的镜像中。
-
安装提供
oscap-im工具的openscap-utils软件包和提供具有安全内容自动化协议(SCAP)内容的数据流的scap-security-guide软件包。 -
为阻止 SSH root 登录的配置文件添加具有
sudoer特权的用户。 - 扫描并修复镜像,以符合所选的配置文件。
使用当前目录中的
Containerfile构建镜像:$ podman build -t quay.io/<namespace>/<image>:<tag> .
验证
列出所有镜像:
$ podman images REPOSITORY TAG IMAGE ID CREATED SIZE quay.io/<namespace>/<image> <tag> b28cd00741b3 About a minute ago 2.1 GB
后续步骤
您可以使用任何普通的可引导镜像部署方法部署强化的可引导镜像。如需更多信息,请参阅 部署 RHEL bootc 镜像。
但是,部署方法可能会影响目标系统的合规性状态。
注意在部署过程中执行的一些自定义(在
bootc-image-builder的蓝图中或在 Anaconda 的 Kickstart 中)可能会影响容器镜像中存在的配置。不要使用与安全策略要求冲突的自定义。-
您可以使用与软件包模式 RHEL 相同的语法和用法,使用
oscap工具来验证镜像模式 RHEL 中运行的系统的合规性。如需更多信息,请参阅配置合规性扫描。