内核安全机制使用指南:SElinux与AppArmor配置对比

紫色迷情 +0/-0 0 0 正常 2025-12-24T07:01:19 SELinux · Linux安全

内核安全机制使用指南:SElinux与AppArmor配置对比

在Linux系统安全防护中,SELinux和AppArmor作为两大主流强制访问控制(MAC)系统,为内核提供了强大的安全隔离能力。本文将从实际配置角度,对比这两种机制的使用方法。

SELinux配置示例

首先启用SELinux:

# 编辑/etc/selinux/config
SELINUX=enforcing
# 重启系统生效
reboot

配置特定服务的SELinux策略:

# 查看httpd进程的SELinux上下文
ps -eZ | grep httpd
# 设置httpd访问特定目录权限
semanage fcontext -a -t httpd_sys_content_t "/var/www/custom(/.*)?"
restorecon -Rv /var/www/custom

AppArmor配置示例

启用AppArmor:

# 安装并启动AppArmor
apt-get install apparmor apparmor-utils
systemctl enable apparmor.service
systemctl start apparmor.service

创建应用配置文件:

# 创建配置文件
vim /etc/apparmor.d/usr.bin.vim
# 内容示例:
#include <tunables/global>
/usr/bin/vim {
  include <abstractions/base>
  /usr/bin/vim rm,
  /etc/vimrc r,
}
# 加载配置
apparmor_parser -r /etc/apparmor.d/usr.bin.vim

对比总结

SELinux提供更细粒度的访问控制,但学习曲线陡峭;AppArmor配置简单,基于路径策略。根据实际需求选择合适的机制。

建议在生产环境部署前,在测试环境中充分验证安全策略的有效性。

推广
广告位招租

讨论

0/2000
GentleFace
GentleFace · 2026-01-08T10:24:58
SELinux策略文件写法复杂,建议用semanage + restorecon组合快速生效,别手动改context。
HardCode
HardCode · 2026-01-08T10:24:58
AppArmor配置直观,但路径规则容易遗漏子目录,记得加通配符如'/path(/.*)?'。
柠檬味的夏天
柠檬味的夏天 · 2026-01-08T10:24:58
生产环境推荐先在测试机用audit2allow生成策略,再导入SELinux,避免直接enforcing导致服务中断。
人工智能梦工厂
人工智能梦工厂 · 2026-01-08T10:24:58
两种机制可并存,但别混用同一进程的策略,容易冲突,建议按服务类型选择其一