我们有一个在 Debian 10 上运行 Postfix (SMTP) 和 Dovecot (POP/IMAP) 的电子邮件服务器。用户不能直接登录它 (SSH),但可以通过 NFS 访问他们的家。
我们想使用 Procmail 对被 SpamAssassin(X-Spam-Flag: YES
标头)标记为垃圾邮件的邮件进行排序,并使用全局文件在每个用户的单独文件夹中/etc/procmailrc
。这似乎很容易做到,如https://serverfault.com/questions/488044/send-spam-mail-to-a-special-folder-using-postfix所示,举个例子。
$HOME/.procmailrc
问题是:出于安全原因,我们不想让我们的用户使用文件。有没有办法阻止 Procmail$HOME/.procmailrc
为大多数用户激活,除了一些受信任的用户?
编辑:
考虑到三人组的回答,我可以编写一个/etc/procmailrc
包含特权用户测试的文件(即允许拥有本地.procmailrc
文件的用户),如下所示:
# /etc/procmailrc
# if the e-mail is flagged as spam, deliver it to $JUNK and stop
:0:
* ^X-Spam-Flag: YES
$JUNK
# if the user is NOT allowed to have a $HOME/.procmailrc,
# then deliver the message to the default mailbox and stop
:0W:
# check whether the user is allowed to have a .procmailrc file
* ! ? check_allowed_user $LOGNAME
$DEFAULT
# else, do nothing (and $HOME/.procmailrc will be activated)
你认为这是要走的路吗?如果是这样,我只需要找到一种简单而可靠的方法来进行check_allowed_user
测试。