应用 RHEL 7 STIG 加固标准¶
- 日期:
2016-08-11 00:00
- 标签:
安全
红帽企业 Linux (RHEL) 7 的安全技术实施指南 (STIG) 正在最终发布阶段。安全加固角色需要更新,以将这些新要求应用于 Ubuntu 16.04、CentOS 7 和 RHEL 7。
问题描述¶
目前,openstack-ansible-security 角色使用 RHEL 6 STIG 作为应用于 Ubuntu 14.04、Ubuntu 16.04、CentOS 7 和 RHEL 7 的所有安全配置的基础。然而,新的 RHEL 7 STIG 正在最终发布阶段,新的安全配置为所有基于 systemd 的发行版(包括
Ubuntu 16.04
CentOS 7
RHEL 7
完全切换到 RHEL 7 STIG 存在一些挑战
它不适用于 Ubuntu 14.04
它使用新的编号方案,与 RHEL 6 STIG 不匹配
许多任务与 RHEL 6 STIG 没有重叠
提议的变更¶
当前的角色结构是扁平的,并且分布之间的差异在每个任务 YAML 文件中处理。建议的新布局如下所示
/main.yml
/rhel6stig/main.yml
/rhel6stig/auth.yml
/rhel6stig/boot.yml
/rhel6stig/...
/rhel7stig/main.yml
/rhel7stig/auth.yml
/rhel7stig/boot.yml
/rhel7stig/...
根 main.yml 将具有一个 when:,它将包含来自 STIG 版本子目录的正确 main.yml。这具有一些好处
这将确保 Ubuntu 14.04 的功能保持不变。
当不再需要 Ubuntu 14.04 的支持时,只需删除
rheli6stig目录和根main.yml文件中的相应include:,就可以轻松地将其删除。由于 Ubuntu 16.04、CentOS 7 和 RHEL 7 都使用 systemd,因此可以删除角色中现有的混乱。
备选方案¶
- 切换整个角色到 RHEL 7 并停止对 Ubuntu 14.04 的支持。
这可能会让现有角色用户感到不安。
- 在现有角色中交织 RHEL6/RHEL7 STIG 配置
这可能会导致大量混乱,并可能增加删除 Ubuntu 14.04 支持的难度。
- 创建一个新角色
部署者可能会对新角色感到困惑,并且需要更改 OpenStack-Ansible 的集成构建。
Playbook/Role 影响¶
有关详细信息,请参阅上面的“**建议的更改**”部分。
升级影响¶
如果部署者正在使用 Newton 版本的角色在 Ubuntu 16.04、CentOS 7 或 RHEL 7 上运行,他们会注意到角色应用了更多安全配置,符合 RHEL 7 STIG 的要求。无需从以前版本的角色中回滚安全配置。
安全影响¶
此更改将提高角色保护新的基于 systemd 的发行版(例如 Ubuntu 16.04、CentOS 7 和 RHEL 7)的能力。
性能影响¶
与角色的先前版本一样,来自 RHEL 7 STIG 的角色更新不应导致系统性能影响或停机时间。
最终用户影响¶
最终用户不应注意到任何差异。
部署者影响¶
部署者将使用与现在相同的方式应用角色。但是,他们会看到一些新的更改
应用了以前未应用的新配置
用于控制 RHEL 7 STIG 中安全配置的新变量
开发人员影响¶
开发人员必须确保 RHEL 7 STIG 内容与 RHEL 6 内容分开。这些将在任务本身以及正式的角色文档中记录。
依赖项¶
此更改没有依赖项。
实现¶
负责人¶
- 主要负责人
Major Hayden (LP: rackerhacker, IRC: mhayden)
工作项¶
创建一个用于 RHEL 7 STIG 内容的目录,并开始添加任务以应用安全配置。
更新文档以反映新的配置和任何用于配置角色操作的新变量。
当 RHEL 7 STIG 内容在 Ubuntu 16.04、CentOS 7 和 RHEL 7 上工作良好时,根
main.yml应该包含来自 RHEL 7 STIG 目录的任务。在稍后的日期,可以通过删除 RHEL 6 目录、删除不需要的变量和删除不需要的文档来删除 Ubuntu 14.04 支持。
测试¶
OpenStack CI 环境将以现在相同的方式测试安全角色。在 RHEL 7 STIG 开发的初始阶段,可以调整测试,以便在 Ubuntu 16.04 和 CentOS 7 上测试两种路径(RHEL 6 STIG 和 RHEL 7 STIG)。
由于 OpenStack CI 没有 RHEL 镜像,因此需要手动进行 RHEL 7 测试。
文档影响¶
需要为 RHEL 7 STIG 安全配置以及引入的任何新变量提供新的文档。这需要仔细完成(也许是在草稿目录中),直到 RHEL 7 STIG 内容准备好应用于 Ubuntu 16.04 和 CentOS 7。