0x0 前言
对这几天研究apparmor做一个总结。Apparmor的功能类似于selinux,基本上是基于最小权限原则,一些基本的概念和使用类似,如都包括complain和enforce模式;但在使用性方面,Apparmor较selinux更简单,例如规则文件无需编译。关于Selinux的一些基础理论和使用,网上有大量资料,不再赘述。
0x1 安装与使用
Ubuntu系统集成了apparmor,但包括的profile文件(类似规则文件)及一些附带的操作模块较少,可以自行安装。
- 安装补充的profiles:
sudo apt-get install apparmor-profiles - 安装方便操作apparmor的工具:
sudo apt-get install apparmor-utils
0x2 apache2的profile例子
使用Apparmor,虽然自带了部分profile文件(也就是我们理解的规则文件),但很多时候不能满足我们的个性化需求。因此,一个重要的工作就是定制自己的profile文件。仿照参考文档,我写了一个apache的profile(注:该profile可能只适用于我自己的服务器)。
服务器环境:apache+php+mysql,profile文件名为usr.sbin.apache2
#include <tunables/global>
/usr/sbin/apache2 {