有人要求我禁用 mailman 上的单个邮件列表。我不想销毁该列表 - 我们可能希望稍后恢复它。此外,我们希望列表成员能够访问存档。
我们在运行 Ubuntu 12.04 的 VM 上使用 mailman 2.1.14 和 Postfix 2.9.6。
似乎 mailman 没有禁用列表的选项。在网上搜索后,我发现我应该在 MTA 级别解决这个问题。
特别是对于 Postfix,我发现我应该使用 header_checks(
作为参考,我找到了一个类似的建议对于 sendmail 用户)。
我已经更新了/etc/postfix/main_cf:
# Disable mailing lists
header_checks = pcre:/etc/postfix/header_checks.pcre
并创建一个 /etc/postfix/header_checks.pcre 文件,其中包含:
/^Sender: <[email protected]>/ REJECT
/^Sender: <[email protected]>/ REJECT
(由于某种原因,所有邮件都附带有发件人的“-bounces”)。
然后我向测试邮件列表发送了一封邮件,但它并没有到达或出现在存档中——正如预期的那样。
我在更改配置之前发送的一封邮件已经到达我的邮箱和存档中,也正如预期的那样。
问题是 - 这是正确的做法吗?或者这种设置以后会给我带来麻烦吗?
答案1
可以通过编辑文件从 postfix 中删除列表的别名mailman/data/aliases
(参见整合 postfix 和 mailman)
其他选项(来自这个问题):
- 您可以使用紧急调解邮件列表的功能,以防止任何邮件投递(尽管如果有人向列表发送邮件,版主仍然会收到电子邮件
- 更改列表文件的权限:
chmod 000 lists/LISTNAME
,当您想重新启用列表时,chmod 2775 lists/LISTNAME
。如果列表有公共档案,而您想禁用对它们的访问,rm archives/public/LISTNAME*
。当您重新启用列表时,这些符号链接将在您访问列表时自动重新创建。在这种情况下,您可能仍想从 postfix 中删除列表的别名,如上所述