在 Ubuntu 上默认是 不启用 SELinux 的(Ubuntu 默认使用的是 AppArmor)。如果你确实需要在 Ubuntu 上开启 SELinux,可按以下步骤操作。
sestatus
如果提示 command not found,说明 SELinux 工具未安装。
如果显示 SELinux status: disabled,说明当前未启用。
sudo apt update
sudo apt install selinux selinux-utils policycoreutils
可选(推荐):
sudo apt install selinux-basics
sudo selinux-activate
该命令会:
然后重启:
sudo reboot
编辑配置文件:
sudo nano /etc/selinux/config
示例内容:
SELINUX=permissive
SELINUXTYPE=default
模式说明:
enforcing:强制模式(真正拦截)permissive:仅记录不拦截(调试用)disabled:关闭⚠️ 不建议第一次直接设 enforcing,容易导致系统无法启动。
修改后重启:
sudo reboot
sestatus
正常输出示例:
SELinux status: enabled
SELinuxfs mount: /sys/fs/selinux
SELinux root directory: /etc/selinux
Loaded policy name: default
Current mode: permissive
sudo setenforce 1
或永久修改 /etc/selinux/config:
SELINUX=enforcing
permissive 模式观察日志sudo ausearch -m avc -ts recent
sudo dmesg | grep avc
如果你愿意,可以告诉我:
我可以给你更精确的操作方案。