RedHat&RockyLinux 9.0 系列如何开启selinux

SELinuxLinux内核的安全子系统,通过严格的访问控制机制增强系统安全性。一般情况下,建议开启SELinux来限制进程的权限,防止恶意程序通过提权等方式对系统进行攻击;然而,由于SELinux的严格访问控制机制,可能会导致一些应用程序或服务无法启动,因此在特定情况下(如开发、调试等),需暂时关闭SELinux。

操作须知

本教程以下述镜像版本为例,介绍如何开启SELinux。其他Linux发行版,请参考开启或关闭SELinux

  • Rocky Linux 9.0+ 64

  • AlmaLinux 9.0+ 64

前提条件

nux-policy-targeted、libselinux-utils 和 policycoreutils 软件包已成功安装在您的系统中。

[root@abc ~]# rpm -qa |grep selinux-policy-targeted
  selinux-policy-targeted-34.1.29-1.el9_0.2.noarch
[root@abc ~]# rpm -qa |grep libselinux-utils
  libselinux-utils-3.3-2.el9.x86_64
[root@abc ~]# rpm -qa |grep policycoreutils
  policycoreutils-3.3-6.el9_0.x86_64 
  python3-policycoreutils-3.3-6.el9_0.noarch 
  policycoreutils-python-utils-3.3-6.el9_0.noarch

操作步骤

重要

操作之前,建议您为ECS实例创建快照备份数据,避免因误操作造成的数据丢失。

创建快照将产生费用。更多信息,请参见快照计费

  1. 查看在内核中是否开启selinux

    [root@iZ2zehe5f7qiemx8oa73q7Z ~]# cat /boot/grub2/grub.cfg |grep selinux

    若显示 selinux=0 或 enforcing=0 表示未开启selinux。

  2. 修改默认配置文件。

    sudo sed -i 's/SELINUX=disabled/SELINUX=enforcing/g' /etc/selinux/config;
    cat /etc/selinux/config |grep -v "#" |grep -v "^$";

    image.png

  3. 移除内核中关于selinux的设置。

     grubby --update-kernel ALL --remove-args selinux
  4. 重新打标。

    touch /.autorelabel
  5. 重启服务器。

     reboot -f
  6. 验证是否开启。

     getenforce

    输出以下内容表示开启成功。

    image.png

    说明

    如果rockylinux重启后还是disable状态,再执行一下重启reboot -f即可。