AppArmor 配置文件中的功能与扩展属性

AppArmor 配置文件中的功能与扩展属性

我目前正在尝试了解 AppArmor 的功能。我找到了一个示例,让我/bin/ping为其复制并生成 AppArmor 配置文件。

首先,我复制并按照说明/bin/ping设置其net_raw功能:permittedeffective

sudo cp /bin/ping /bin/fake_ping
sudo setcap cap_net_raw+ep  /bin/fake_ping

然后我生成了一个 AppArmor 配置文件:

sudo aa-genprof /bin/fake_ping

AppArmor 配置文件以强制方式保存 - 一切正常。之后我取消设置net_raw功能:

sudo setcap cap_net_raw-ep  /bin/fake_ping

正如预期的那样,由于缺少此功能,它现在无法工作:

fake_ping: socktype: SOCK_RAW
fake_ping: socket: Operation not permitted
fake_ping: => missing cap_net_raw+p capability or setuid?

我的问题:

新生成的 apparmor 配置文件已经包含,那么为什么它在没有扩展属性设置的情况capability net_raw下不起作用?cap_net_raw=ep有何不同?

相关内容