使用spawn服务的Postfix高级内容过滤器

时间:2016-10-26 16:08:12

标签: python filter postfix-mta

Postfix Filter Readme中所述,我想为spawn服务创建一个过滤器,最好是在Python中,我可以在master.cf中定义,如下所示:

/etc/postfix/master.cf:
# ===================================================================
# service       type  private unpriv  chroot  wakeup  maxproc command
#                     (yes)   (yes)   (yes)   (never) (100)
# ===================================================================
localhost:10025 inet  n       n       n       -       10      spawn
    user=filter argv=/path/to/filter localhost 10026

因此,如果邮件没有被退回,它会将邮件注入端口10026上的Postfix。

spawn服务的替代方法是运行独立的smtp守护进程,例如在端口10025上运行。我发现this example正在使用Python的smtpd.SMTPServer。这似乎工作正常,但我更喜欢spawn方法,因为我不想自己管理守护进程,比如确保它仍然正常运行。

我找不到有关Postfix spawn服务的更多信息以及我应该如何为它实现过滤器。这种过滤器的输入(命令)是什么(格式)?有人可以提供一个例子,最好是用Python吗?

1 个答案:

答案 0 :(得分:0)

http://www.postfix.org/spawn.8.html - 它并没有比那更好。

http://www.postfix.org/SMTPD_POLICY_README.html有一些例子可以使用spawn。