首页主机资讯SELinux模式Ubuntu怎么切换

SELinux模式Ubuntu怎么切换

时间2025-12-12 23:02:05发布访客分类主机资讯浏览1242
导读:Ubuntu 切换 SELinux 模式的正确做法 前置说明 Ubuntu 默认使用 AppArmor,并非 SELinux。若要在 Ubuntu 上使用 SELinux,需要先安装并启用相关组件,再切换模式。SELinux 有三种模式:...

Ubuntu 切换 SELinux 模式的正确做法

前置说明

  • Ubuntu 默认使用 AppArmor,并非 SELinux。若要在 Ubuntu 上使用 SELinux,需要先安装并启用相关组件,再切换模式。SELinux 有三种模式:Enforcing(强制)、Permissive(宽容)、Disabled(禁用)。在 Permissive 下仅记录拒绝日志而不阻断;在 Disabled 下策略不加载,完全关闭。一般建议生产环境使用 Enforcing,排障阶段可先用 Permissive

安装与启用 SELinux(首次启用时执行)

  • 安装必要软件包与策略:
    • sudo apt update
    • sudo apt install selinux-basics selinux-policy-default selinux-utils auditd
  • 激活 SELinux(设置内核启动参数并初始化):
    • sudo selinux-activate
  • 重启系统,使激活生效:
    • sudo reboot
  • 说明:上述步骤完成后,系统才具备在 Enforcing/Permissive 间切换的能力;若未执行激活,相关命令会不可用。

切换模式的常用命令

  • 查看当前状态与模式:
    • getenforce(返回 EnforcingPermissive
    • sestatus(查看是否 enabled、当前模式、策略类型等)
  • 临时切换(无需重启,重启后恢复为配置文件设定):
    • 切换为宽容模式:sudo setenforce 0
    • 切换为强制模式:sudo setenforce 1
  • 永久切换(需重启生效):
    • 编辑配置文件:sudo nano /etc/selinux/config
    • 设置:SELINUX=enforcing 或 SELINUX=permissive(或 SELINUX=disabled 完全关闭)
    • 保存并重启:sudo reboot
  • 提示:从 Disabled 改为 Enforcing/Permissive 必须重启;在 EnforcingPermissive 间切换可用 setenforce 即时生效。

常见问题与排障

  • 从 Disabled 切换到 Enforcing/Permissive 后首次启动很慢并出现大量日志:这是正常的“首次重新标记”过程。如需加速,可在根目录创建隐藏文件 /.autorelabel 后重启,以触发完整重标记:
    • sudo touch /.autorelabel
    • sudo reboot
  • 查看拒绝日志与原因:
    • 查看最近 AVC 拒绝:sudo ausearch -m avc -ts recent
    • 分析拒绝原因:sudo ausearch -m avc -ts recent | audit2why
  • 与 AppArmor 的冲突处理:
    • Ubuntu 默认启用 AppArmor。若计划长期使用 SELinux,建议彻底关闭 AppArmor(可能影响已依赖其策略的服务):
      • 停止并禁用:sudo systemctl stop apparmor & & sudo systemctl disable apparmor
      • 如确需卸载:sudo apt purge apparmor
    • 注意:变更安全模块有风险,操作前请评估业务影响并备份关键数据。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: SELinux模式Ubuntu怎么切换
本文地址: https://pptw.com/jishu/771031.html
SELinux对Ubuntu兼容性有影响吗 Ubuntu如何安装SELinux

游客 回复需填写必要信息