第 9 章 可引导镜像的安全性强化和合规性


RHEL 的镜像模式提供了安全合规性功能,并支持需要合规配置的工作负载。但是,强化系统并验证合规性状态与软件包模式不同的过程。

使用 RHEL 的镜像模式的关键部分是创建一个可引导的容器镜像。部署的系统镜像镜像。因此,构建的镜像必须包含安全策略所需的所有软件包和配置设置。

重要

当可引导镜像作为容器运行时,一些强化配置无效。要获得根据安全配置文件完全配置的系统,您必须在裸机或虚拟机中引导镜像,而不是作为容器运行。容器部署的主要区别包括如下:

  • 安全配置文件所需的 systemd 服务不在容器中运行,因为 systemd 没有在容器中运行。因此,容器无法遵循相关的策略要求。
  • 其他服务不能在容器中运行,尽管它们配置正确。这意味着 oscap 会将它们报告为正确配置,即使它们没有运行。
  • 合规配置文件定义的配置不强制实施。来自其他软件包或安装脚本的请求可以更改合规性状态。始终检查已安装产品的合规性,并更改 Containerfile 以符合您的要求。

9.1. 构建强化的可引导镜像

您可以通过在用于构建可引导容器镜像的 Containerfile 中包含 oscap-im 工具来更轻松地构建强化的可引导镜像。

虽然 oscap-im 可以使用任何 SCAP 内容,但 scap-security-guide 中提供的 SCAP 源数据流经过专门调整和测试,以便与可引导容器兼容。

先决条件

  • container-tools 元数据软件包已安装。
  • 您知道系统应遵守的基准中的配置文件的 ID。要查找 ID,请参阅 查看配置合规性的配置文件 部分。

流程

  1. 创建 Containerfile

    FROM registry.redhat.io/rhel10/rhel-bootc:latest
    
    # Install OpenSCAP scanner and security content to the image
    RUN dnf install -y openscap-utils scap-security-guide && dnf clean all
    
    # Run scan and hardening
    RUN oscap-im --profile <profile_ID> /usr/share/xml/scap/ssg/content/ssg-rhel10-ds.xml
    
    # Because certain profiles prevent ssh root logins, add a separate sudo user with a password
    # Alternatively, you can add users with Kickstart, cloud-init, or other methods
    RUN useradd -G wheel -p "<password_hash>" <admin_user>

    <admin_user> 替换为用户名,将 <password_hash> 替换为所选密码的哈希值。

    这个 Containerfile 执行以下任务:

    • 安装提供 oscap-im 工具的 openscap-utils 软件包和提供具有安全内容自动化协议(SCAP)内容的数据流的 scap-security-guide 软件包。
    • 为阻止 SSH root 登录的配置文件添加具有 sudoer 特权的用户。
    • 扫描并修复镜像,以符合所选的配置文件。
  2. 使用当前目录中的 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 镜像

    但是,部署方法可能会影响目标系统的合规性状态。

  • 您可以使用与软件包模式 RHEL 相同的语法和用法,使用 oscap 工具来验证镜像模式 RHEL 中运行的系统的合规性。如需更多信息,请参阅配置合规性扫描
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2026 Red Hat
返回顶部