温馨提示×

ubuntu selinux怎样配置

小樊
45
2026-09-01 10:34:23
栏目: 智能运维

Ubuntu 上,SELinux 并不是默认启用的(Ubuntu 默认使用 AppArmor)。如果你确实需要在 Ubuntu 上配置 SELinux,可以按下面的步骤来。


一、Ubuntu 是否支持 SELinux?

✅ 支持,但:

  • 默认未启用
  • 需要手动安装并修改启动参数
  • 某些桌面/云镜像可能存在兼容问题(建议服务器版)

二、安装 SELinux 相关包

sudo apt update
sudo apt install selinux selinux-utils policycoreutils checkpolicy

可选(推荐):

sudo apt install selinux-basics

三、启用 SELinux

1️⃣ 使用工具启用(推荐)

sudo selinux-activate

该命令会:

  • 修改 GRUB 启动参数
  • 设置 SELinux 为 enforcingpermissive

2️⃣ 手动修改(备选)

编辑 GRUB:

sudo nano /etc/default/grub

GRUB_CMDLINE_LINUX 中添加:

security=selinux selinux=1

然后更新 GRUB:

sudo update-grub

四、设置 SELinux 模式

查看当前状态:

sestatus

临时切换模式:

sudo setenforce 0   # permissive
sudo setenforce 1   # enforcing

永久修改:

sudo nano /etc/selinux/config

示例:

SELINUX=enforcing
SELINUXTYPE=default

五、重启系统

sudo reboot

重启后检查:

sestatus

六、常见问题

❌ 系统无法启动?

  • 多半是 策略不兼容
  • 可在 GRUB 加:
selinux=0

enforcing=0

✅ 推荐先使用 permissive 模式

SELINUX=permissive

观察日志后再切 enforcing。


七、基本管理命令

# 查看上下文
ls -Z

# 修改上下文
chcon -t httpd_sys_content_t /var/www/html

# 恢复默认
restorecon -Rv /var/www

# 查看拒绝日志
ausearch -m AVC -ts recent

八、Ubuntu 使用 SELinux 的建议

✅ 适合:

  • 服务器安全加固
  • 学习 SELinux
  • 红帽生态迁移

❌ 不推荐:

  • 桌面日常使用
  • 依赖 AppArmor 的应用

如果你愿意,可以告诉我:

  • Ubuntu 版本(20.04 / 22.04 / 24.04)
  • 服务器用途(Web / 数据库 / 容器)
  • 是否从 AppArmor 迁移

我可以给你更具体的 SELinux 策略配置示例。

0