5.2. 生成 SELinux 策略模块:se policy generate


在以前的 Red Hat Enterprise Linux 版本中,sepolgenselinux-polgengui 工具用于生成 SELinux 策略。这些工具已合并到 sepolicy 套件中。在 Red Hat Enterprise Linux 7 中,sepolicy generate 命令用于生成初始 SELinux 策略模块模板。
sepolgen 不同,不需要以 root 用户身份运行 sepolicy generate。这个工具还会创建一个 RPM spec 文件,它可用于构建 RPM 软件包,该软件包将策略软件包文件(NAME.pp)和接口文件(NAME.if)安装到正确的位置,提供 SELinux 策略安装到内核中,并修复标签。设置脚本将继续安装 SELinux 策略并设置标签。此外,使用 sepolicy manpage 命令生成基于已安装策略的手册页。[7] 最后,sepolicy 生成 构建并编译 SELinux 策略以及手册页到 RPM 软件包中,准备好安装到其他系统上。
执行 sepolicy generate 时,会生成以下文件:
NAME.te - type enforcing file
此文件定义特定域的所有类型和规则。
NAME.if - interface file
此文件定义系统的默认文件上下文。它使用 NAME.te 文件中创建的文件类型,并将文件路径与类型相关联。restoreconrpm 等实用程序使用这些路径来写入标签。
NAME_selinux.spec - RPM spec file
此文件是一个 RPM spec 文件,可安装 SELinux 策略并设置标签。此文件还会安装 interface 文件和描述策略的 man page。您可以使用 sepolicy manpage -d NAME 命令生成 man page。
NAME.sh - helper shell 脚本
此脚本有助于在系统上编译、安装和修复标记。它还会根据安装的策略生成 man page,编译和构建适合在其他系统上安装的 RPM 软件包。
如果可以生成 SELinux 策略模块,sepolicy generate 会将源域生成的所有路径输出到目标域。有关 sepolicy 生成 的详情,请查看 sepolicy-generate(8) 手册页。


[7] 有关 sepolicy man page 的详情,请查看 第 5.4 节 “生成 man pages: sepolicy manpage
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.