在 Ubuntu 上安装和启用 SELinux 与在 RHEL/CentOS 上不同,因为 Ubuntu 默认使用的是 AppArmor。下面我按从零开始、可操作的方式给你说明。
先看看系统现在用的是哪种:
cat /proc/self/attr/current
或者:
sestatus
如果是:
command not found → 没装 SELinuxsudo apt update
sudo apt upgrade -y
sudo apt install selinux selinux-utils selinux-basics -y
selinux-basics会自动处理一些配置
Ubuntu 默认启用 AppArmor,必须禁用它才能用 SELinux。
sudo systemctl disable apparmor
sudo systemctl stop apparmor
sudo selinux-activate
这个命令会:
enforcing 或 permissive编辑配置文件:
sudo nano /etc/selinux/config
内容示例:
SELINUX=permissive
SELINUXTYPE=default
建议第一次用
permissive,只记录不拦截,避免系统无法启动
sudo reboot
重启后执行:
sestatus
正常输出示例:
SELinux status: enabled
SELinuxfs mount: /sys/fs/selinux
Current mode: permissive
Mode from config file: permissive
确认系统运行正常后:
sudo setenforce 1
并修改配置文件:
SELINUX=enforcing
建议:
permissive 模式做实验如果你告诉我:
我可以给你更精确的配置方案。