Mark C Asked: 2019-08-16 13:54:18 +0800 CST2019-08-16 13:54:18 +0800 CST 2019-08-16 13:54:18 +0800 CST 自定义 SELinux 策略模块是否可移植? 772 如果我采用创建的策略,例如audit2allow -M在多台服务器上使用并安装它,它会按预期工作,还是在创建策略时发生一些特殊情况?理想情况下,我想使用 Ansible 进行部署。 linux 1 个回答 Voted Best Answer filbranden 2019-08-28T20:31:49+08:002019-08-28T20:31:49+08:00 SELinux 策略模块是可移植的,可以在其他服务器上复制和重用。 只要服务器使用相同的策略(相同策略的版本都可以。)例如,如果您的所有服务器都使用“目标”策略(这是 RHEL/CentOS/Fedora 上的默认设置),那么您应该没事的。一些版本差异可能是可以容忍的。 不同的策略可能彼此不兼容,因为它们定义了 SELinux 类型(本质上是标签、名称),这些名称将遍布您的策略模块,因此这些模块仅在使用相同 SELinux 类型的主机中才有意义。此外,该策略模块中编码的规则需要在策略中已经存在的其他规则的上下文中有意义。这就是为什么您需要相同(或几乎相同)的政策才能使其发挥作用。 但除此之外,模块本身使用可移植格式,您可以轻松地将它们以二进制格式发送并加载到其他机器上,而无需在目标机器上安装构建此类模块的工具。
SELinux 策略模块是可移植的,可以在其他服务器上复制和重用。
只要服务器使用相同的策略(相同策略的版本都可以。)例如,如果您的所有服务器都使用“目标”策略(这是 RHEL/CentOS/Fedora 上的默认设置),那么您应该没事的。一些版本差异可能是可以容忍的。
不同的策略可能彼此不兼容,因为它们定义了 SELinux 类型(本质上是标签、名称),这些名称将遍布您的策略模块,因此这些模块仅在使用相同 SELinux 类型的主机中才有意义。此外,该策略模块中编码的规则需要在策略中已经存在的其他规则的上下文中有意义。这就是为什么您需要相同(或几乎相同)的政策才能使其发挥作用。
但除此之外,模块本身使用可移植格式,您可以轻松地将它们以二进制格式发送并加载到其他机器上,而无需在目标机器上安装构建此类模块的工具。