postfix | sender_bcc_maps 用于特定电子邮件(带附件)

postfix | sender_bcc_maps 用于特定电子邮件(带附件)

如果可能的话,如何将所有带有附件的来信复制到[电子邮件保护]

如果我使用sender_bcc_map = type:table- 所有邮件都将被复制,不包括附件。我不需要那个,我只需要带附件的电子邮件。

我的 postfix 版本是 2.10。

答案1

基本上,Postfix 可以通过解析邮件头来检测邮件是否带有附件。为此,Postfix 具有名为 header_checks 的功能及其变体。RFC 2183 第 2.2 节定义了附件应该使用Content-Dispostion: attachment;标题。因此,我们可以使用mime_header_checks来检测附件,然后告诉 postfix 复制(密件抄送)它。

# main.cf
mime_header_checks = pcre:/etc/postfix/attachment_check

# /etc/postfix/attachment_check
/^Content-Disposition: attachment;/  BCC [email protected]

更多信息:Postfix BUILTIN_FILTER_README过滤邮件附件


如果可能的话,如何复制所有接收邮件附件为[电子邮件保护]

仅供参考,Postfix 没有收发邮件的概念。所有通过 Postfix 发送的电子邮件都被视为来自其他客户端和 Postfix中继它,到其他邮件服务器、LMTP 服务器、邮箱等。所以我担心这种方法会影响您的电子邮件,包括收发邮件(以下有一些例外)。

如果您的外发电子邮件来源是 sendmail(mail命令)或通过提交(587)或通过 IP 地址 127.0.0.1 提交,您可以选择性地关闭 header_checks。在master.cf

# By default turn on header_checks
smtp                inet  n     -     n     -     -   smtpd
# Disable header_checks on loopback IP address 
127.0.0.1:smtp      inet  n     -     n     -     -   smtpd
   -o receive_override_options=no_header_body_checks
# Disable header_checks when email enter via sendmail/mail command
pickup              fifo  n     -     n    60     1   pickup
   -o receive_override_options=no_header_body_checks
# Disable header_checks on submission port
submission          inet  n     -     n     -     -   smtpd
   -o receive_override_options=no_header_body_checks

来源:关闭内部用户的正文和标题检查

相关内容