在 Ubuntu 上安装和启用 SELinux 的步骤如下(Ubuntu 默认使用 AppArmor,SELinux 不是默认启用状态):
sudo apt update
sudo apt install selinux selinux-utils selinux-basics auditd
常用包说明:
selinux:SELinux 核心selinux-utils:常用工具(如 semanage、setenforce)selinux-basics:基础配置脚本auditd:审计日志(SELinux 报错会记录在这里)运行:
sudo selinux-activate
该命令会修改 GRUB 启动参数,在下次重启时启用 SELinux。
编辑配置文件:
sudo nano /etc/selinux/config
示例配置:
SELINUX=permissive
SELINUXTYPE=default
| 模式 | 说明 |
|---|---|
enforcing |
强制模式(会拦截违规操作) |
permissive |
宽容模式(只记录不拦截,推荐初次使用) |
disabled |
关闭 |
✅ 建议第一次使用设为 permissive
sudo reboot
重启后执行:
sestatus
正常输出示例:
SELinux status: enabled
SELinuxfs mount: /sys/fs/selinux
SELinux root directory: /etc/selinux
Loaded policy name: default
Current mode: permissive
Mode from config file: permissive
sudo setenforce 0 # permissive
sudo setenforce 1 # enforcing
重启后会恢复为
/etc/selinux/config中的设置
sudo ausearch -m avc
或:
sudo tail -f /var/log/audit/audit.log
Ubuntu 官方更推荐 AppArmor
不建议在生产环境直接开启 enforcing
permissive 模式观察一段时间Ubuntu + SELinux 策略较少
.te 文件)更推荐:
如果你愿意,我可以:
你现在用的是 Ubuntu 哪个版本?