我正在使用Yocto (1.8.1Fido)中的PREEMPT修补程序编译Linux内核v3.12.61,并启用了以下内核配置。创建了/sys/fs/selinux目录,但它是空的。
CONFIG_SECURITY_SELINUX=y
CONFIG_SECURITY_SELINUX_BOOTPARAM=y
CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE=1
#CONFIG_SECURITY_SELINUX_DISABLE is not set
CONFIG_SECURITY_SELINUX_DEVELOP=y
CONFIG_SECURITY_SELINUX_AVC_STATS=y
CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1
#CONFIG_SECURITY_SELINUX_POLICYDB_VERSION_MAX is not set
CONFIG_DEFAULT_SECURITY_SELINUX=y无论我是启用CONFIG_SECURITY_SELINUX_BOOTPARAM,还是将其设置为0或1,结果都是相同的。
我已经使用来自OE的meta层安装了SELinux用户空间工具。我还在/etc/selinux/config中设置了/etc/selinux/config。运行sestatus将返回"SELinux status: disabled"。以前,这是我在编译旧内核(v3.2)时所需要做的全部工作。我在这里有遗漏什么吗?
发布于 2019-05-03 07:24:17
如果您想在图像中使用selinux, layer中有一个部分大致概述了应该做什么。
为了堆栈溢出的完整性,我将在这里粘贴它,但请注意,当您在这里阅读它时,这个状态可能已经过时,所以如果可能的话,请始终参考原始状态。
构建层
为了向poky构建添加selinux支持,应该将该层添加到您的项目bblayers.conf文件中。 默认情况下,selinux组件是禁用的。这符合Yocto兼容准则,该准则指出,简单地包含一个层不应该更改系统行为。 为了使用这个层中的组件,必须将'selinux‘添加到
DISTRO_FEATURES中。除了selinux之外,您还应该确保acl、xattr和pam也存在。例如DISTRO_FEATURES_append = " acl xattr pam selinux"您还必须为虚拟/重构策略指定首选提供程序。包含此层的策略只是引用策略,需要为您的环境量身定做。 启用参考策略-mls:例如PREFERRED_PROVIDER_virtual/refpolicy ?= "refpolicy-mls"
https://stackoverflow.com/questions/55964335
复制相似问题