温馨提示×

什么是ubuntu selinux模式

小樊
39
2026-10-16 02:01:23
栏目: 智能运维

在 Ubuntu 中,SELinux 模式指的是 SELinux(Security-Enhanced Linux) 的安全运行模式。SELinux 是 Linux 的一种强制访问控制(MAC)安全机制,用来限制进程和用户的权限,即使你是 root 也可能被限制。

不过需要先说明一个重点:

Ubuntu 默认并不使用 SELinux,而是使用 AppArmor。
SELinux 在 RHEL / CentOS / Fedora 中更常见。Ubuntu 上虽然可以装 SELinux,但一般不是默认配置。


一、SELinux 的三种模式

SELinux 有 3 种运行模式:

1️⃣ Enforcing(强制模式)

  • 真正生效
  • 违反 SELinux 策略的行为会被拒绝
  • 系统日志会记录拒绝信息
  • 最安全,但配置不当可能导致服务无法运行
getenforce
# 输出:Enforcing

2️⃣ Permissive(宽容模式)

  • 只记录,不阻止
  • 违反策略的行为会被记录到日志,但不会拒绝
  • 常用于调试和排错
setenforce 0
getenforce
# 输出:Permissive

3️⃣ Disabled(禁用模式)

  • SELinux 完全关闭
  • 不加载策略,也不记录日志
  • 修改后通常需要重启才能生效
# 修改 /etc/selinux/config
SELINUX=disabled

二、Ubuntu 与 SELinux 的关系

Ubuntu 默认情况

  • ✅ 使用 AppArmor
  • ❌ 不启用 SELinux

查看是否启用 SELinux:

getenforce
# 若未安装通常提示 command not found

查看 AppArmor 状态:

aa-status

如果你在 Ubuntu 上安装了 SELinux

常见步骤:

sudo apt install selinux-basics selinux-policy-default
sudo selinux-activate
sudo reboot

安装后查看模式:

getenforce
sestatus

三、SELinux 模式 vs AppArmor(Ubuntu 用户重点)

项目 SELinux AppArmor(Ubuntu 默认)
类型 MAC MAC
配置复杂度 高 低
默认系统 RHEL/CentOS Ubuntu/Debian
路径控制 标签 路径

四、什么时候会用到 SELinux 模式?

  • 从 CentOS 迁移到 Ubuntu 但仍想用 SELinux
  • 安全合规要求(等保、金融)
  • 学习 SELinux 原理
  • 调试“权限被拒但权限看起来正常”的问题

如果你愿意,我可以:

  • 帮你判断 Ubuntu 是否适合用 SELinux
  • 教你 SELinux 排错命令
  • 对比 AppArmor 和 SELinux 实战差异

你是在学习 SELinux,还是在排错?

0 踩