在 /etc/aliases 中使用邮件假脱机文件作为条目会在 EL7 中出现错误

在 /etc/aliases 中使用邮件假脱机文件作为条目会在 EL7 中出现错误

多年来(使用 EL6 及之前的版本),我已经在 /etc/aliases 文件中成功使用了这样的条目:

bugs:       /var/spool/mail/bugs

想法是可以将发送给非用户的邮件放入文件中以供以后处理或存档。使用 RHEL7 或 CentOS7 时,这些条目会出现以下两个错误。

首先,在没有创建错误文件的情况下,邮件日志错误“无法独占地创建文件:权限被拒绝”:

May 16 12:17:04 foobar postfix/local[17510]: 3D313673442: to=<[email protected]>, relay=local, delay=0.12, delays=0.08/0.02/0/0.02, dsn=5.2.0, status=bounced (cannot append message to file /var/spool/mail/bugs: cannot create file exclusively: Permission denied)

其次,如果我预先创建一个具有合理所有权+上下文的文件:

ls -l /var/spool/mail/bugs
-rw-rw----. 1 postfix mail 0 May  7 19:34 /var/spool/mail/bugs
ls -Z /var/spool/mail/bugs
-rw-rw----. postfix mail system_u:object_r:mail_spool_t:s0 /var/spool/mail/bugs

我收到“无法创建锁定文件”错误

May 16 12:11:43 foobar postfix/local[17422]: warning: unable to create lock file /var/spool/mail/bugs.lock: Permission denied

我能够将消息传递到具有以下可怕权限(1777 和 666)的文件,但是出于安全原因这显然是不可接受的:

# ll -d /var/spool/mail; ll /var/spool/mail/bugs
drwxrwxrwt. 2 root mail 52 May 16 13:36 /var/spool/mail
-rw-rw-rw-. 1 postfix mail 6913 May 16 13:31 /var/spool/mail/bugs

EL7 是 postfix-2.10'ish,EL6 是 postfix-2.6'ish。

答案1

main.cf解决这个问题的方法是在参数中进行设置,而无需创建新用户default_privs = mail

请记住,不鼓励对 default_privs 使用 root 或 postfix。

相关内容