在 RHEL 上启用 SELinux

在 RHEL 上启用 SELinux

我使用的是 RHEL 6.5,我需要启用 SELinux。我尝试过以下命令,但它不起作用:

$ setenforce 1
$ echo 1 > /selinux/enforce

注意:我也尝试过编辑/etc/selinux/config,但不存在这样的文件。

编辑:#1

的输出sestatus如下:

LinuxBox root [scripts] > sestatus
SELinux status:                 disabled

答案1

首先搜索selinux是否安装。

rpm -qa | grep selinux, rpm -q policycoreutils, and rpm -qa | grep setroubleshoot

如果这没有显示任何内容,则安装 selinux,

sudo yum install selinux

selinux安装好后,SELINUX=permissive在中配置/etc/selinux/config

然后最后重启电脑让selinux生效。

答案2

鉴于您使用的是 RHEL,SELinux 可能已经安装。确认:

$ rpm -aq | grep -i selinux
selinux-policy-targeted-3.12.1-74.26.fc19.noarch
libselinux-devel-2.1.13-15.fc19.x86_64
libselinux-2.1.13-15.fc19.x86_64
libselinux-utils-2.1.13-15.fc19.x86_64
selinux-policy-3.12.1-74.26.fc19.noarch
libselinux-2.1.13-15.fc19.i686
libselinux-python-2.1.13-15.fc19.x86_64

您将看到与上面类似的包。这是来自 F19,但也应该适用于您的情况。您还可以使用以下setstatus命令进行确认:

$ sestatus
SELinux status:                 enabled
SELinuxfs mount:                /selinux
Current mode:                   enforcing
Mode from config file:          enforcing
Policy version:                 24
Policy from config file:        targeted

如果您要将 SELinux 添加到最初设置时没有使用 SELinux 的系统,则本文档中会有一条警告/注释。

如果系统最初安装时没有 SELinux,特别是后来添加到系统中的 selinux-policy 软件包,则需要执行一个额外步骤来启用 SELinux。为了确保 SELinux 在系统启动期间初始化,必须运行 dracut 实用程序以将 SELinux 感知放入 initramfs 文件系统中。如果不这样做会导致 SELinux 在系统启动期间无法启动。

在处理 RHEL 时,建议查找 Red Hat 为任何 RHEL 版本维护的优秀手册。 SELinux 有详细的文档记录,其中涵盖了您需要了解的所有内容。

相关内容