postfix – Procmail配方,root拥有的邮件

postfix – Procmail配方,root拥有的邮件,第1张

概述我正在使用Postfix和Procmail的组合来处理我的一台服务器上的入站电子邮件.每个用户都有一个本地帐户,我已经成功使用下面的/usr/local / etc / procmailrc多年: DEFAULT=$HOME/mail/LOGFILE=/var/log/procmail 我最近添加了一个配方,将标记为垃圾邮件的邮件定向到一个单独的文件夹: :0* ^X-Spam-Flag: Y 我正在使用Postfix和Procmail的组合来处理我的一台服务器上的入站电子邮件.每个用户都有一个本地帐户,我已经成功使用下面的/usr/local / etc / procmailrc多年:
DEFAulT=$HOME/mail/LOGfile=/var/log/procmail

我最近添加了一个配方,将标记为垃圾邮件的邮件定向到一个单独的文件夹:

:0* ^X-Spam-Flag: YES$HOME/mail/.Junk/

但是,在某些情况下,进入此文件夹的消息似乎归root而不是正确的用户所有.我从未在收件箱中遇到此问题,而且它似乎只影响某些用户.

我设法在ps中捕获了一个Procmail进程,它似乎确实以正确的用户身份运行. (此用户在Junk文件夹中也有root拥有的邮件)

# ps axu | grep procmail{correct-local-username}   7402   0.0  0.2  12140   1780 ??  Ss   11:37AM      0:00.01 /usr/local/bin/procmail -a

有没有人知道为什么配方处理的消息最终由root拥有,而进入默认文件夹的消息将获得正确的所有者?

有什么我可以做的(即使它是Hacky,如从procmail配方调用chown),以确保消息始终由正确的用户拥有?

如果它很重要,Procmail在Postix中配置如下:

mailBox_command = /usr/local/bin/procmail -a "$EXTENSION"
解决方法 检查垃圾文件夹的权限是否正确,但是您是否还可以将以下内容添加到procmail.cf中:
DROPPRIVS=yes

我不是procmail的专家,但根据this man entry,它应该放弃procmail所拥有的任何权利,并且收件人不会(强调我的).

DROPPRIVS            If  set  to  `yes'  procmail   will   drop   all                      privileges  it  might  have  had (suID or sgid).                      This is only useful if  you  want  to  guarantee                      that the bottom half of the /etc/procmailrc file                      is executed on behalf of the recipIEnt.

关键部分;代表收件人执行.

解释为什么这适用于用户@Tripleee:

The DEFAulT delivery happens after an implicit DROPPRIVS,but if you explicitly deliver something while in privileged mode,you also need to explicitly drop your privileges.

总结

以上是内存溢出为你收集整理的postfix – Procmail配方,root拥有的邮件全部内容,希望文章能够帮你解决postfix – Procmail配方,root拥有的邮件所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1036476.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存