内核安全机制使用指南: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配置简单,基于路径策略。根据实际需求选择合适的机制。
建议在生产环境部署前,在测试环境中充分验证安全策略的有效性。

讨论