安装 debian buster apparmor 后,我的生活变得更加困难。但我想熟悉它,所以我尝试调整配置文件(我非常熟悉 debian,所以我希望这只是暂时的,我想下一次升级应该可以解决大多数问题)。
其中一条消息对我来说看起来非常简单:
Jul 25 13:01:03 zenon kernel: audit: type=1400 audit(1564052463.462:1334): apparmor="DENIED" operation="open" profile="/usr/sbin/postdrop" name="/etc/postfix/dynamicmaps.cf.d/" pid=25297 comm="postdrop" requested_mask="r" denied_mask="r" fsuid=0 ouid=0
我认为我应该/etc/postfix/dynamicmaps.cf.d r,
补充/etc/apparmor.d/usr.sbin.postdrop
并重新加载个人资料...但仍然被拒绝。所以我想我可能还应该添加
/etc/postfix/dynamicmaps.cf.d/* r,
并/etc/apparmor.d/usr.sbin.postdrop
重新加载个人资料...
但还是被拒了...
也许我将其添加到了错误的地方???
整个文件:
# ------------------------------------------------------------------
#
# Copyright (C) 2002-2005 Novell/SUSE
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of version 2 of the GNU General Public
# License published by the Free Software Foundation.
#
# ------------------------------------------------------------------
# vim:syntax=apparmor
#include <tunables/global>
/usr/sbin/postdrop {
#include <abstractions/base>
#include <abstractions/kerberosclient>
#include <abstractions/nameservice>
#include <abstractions/postfix-common>
# This is needed at least for permissions=paranoid
capability dac_override,
capability dac_read_search,
/etc/postfix r,
/etc/postfix/main.cf r,
/etc/postfix/dynamicmaps.cf.d r,
/etc/postfix/dynamicmaps.cf.d/* r,
/etc/postfix/postfix-script mixr,
@{PROC}/net/if_inet6 r,
/usr/sbin/postdrop rmix,
/var/spool/postfix r,
/var/spool/postfix/maildrop r,
/var/spool/postfix/maildrop/* rwl,
/var/spool/postfix/pid r,
/var/spool/postfix/public/pickup w,
}
答案1
配置文件中的现有条目
/etc/postfix/dynamicmaps.cf.d r,
/etc/postfix/dynamicmaps.cf.d/* r,
与目录不匹配/etc/postfix/dynamicmaps.cf.d/
。只有与尾部斜杠匹配的规则才会与目录匹配。以下任何一种都应该有效:
/etc/postfix/dynamicmaps.cf.d/ r
/etc/postfix/** r
看apparmor.d - AppArmor 安全配置文件的语法更多细节。
您可以运行 AppArmor 或单独的配置文件投诉模式到调试。