我如何告诉 Postfix 放宽 smtpd_sender_restrictions?

我如何告诉 Postfix 放宽 smtpd_sender_restrictions?

如果我使用带有 SSL 的端口 143 上的邮件客户端连接到我服务器上的 Postfix,那么通过此连接从虚拟域发送的邮件将通过,smtpd_sender_restrictions从而使将其路由到 amavis 的过滤器在传输之前添加其 DKIM 签名。

到目前为止一切都很好,但是...

但是,如果我生成一封电子邮件来自同一个用户@virtual_domain如上所述,直接从与 Postfix 在同一服务器上运行的 Drupal(或为经过身份验证的用户运行的 Roundcube)发送的电子邮件不会通过,smtpd_sender_restrictions因此不会到达 amavis 并获得其 DKIM 签名。

我该怎么做才能允许我的本地(程序生成的)电子邮件通过smtpd_sender_restrictions?我似乎看不到任何条件在手册中我可以添加哪些内容来放宽规则?下面是我使用的规则/etc/postfix/main.cf

    ##################                                                                                                                                             
    # SASL Settings and DKIM Settings                                                                                                                              
    # See http://gogs.info/books/debian-mail/chunked/postfix.sasl.html                                                                                             
    # See http://gogs.info/books/debian-mail/chunked/antispam.dkim.html                                                                                            
    ##################                                                                                                                                             
    smtpd_sender_restrictions =
    # If mail is coming from mynetwork or from authenticated users use amavis filtering on port 10026 (DKIM signing)                                               
      check_sender_access regexp:/etc/postfix/amavis/tag_as_originating.re
      permit_mynetworks
      permit_sasl_authenticated
      permit_tls_clientcerts
    # For other mail use amavis filtering on port 10024 (skips DKIM signing)                                                                                       
      check_sender_access regexp:/etc/postfix/amavis/tag_as_foreign.re

我使用 Post Admin 管理 m 个虚拟域,允许的发件人列在这里:

    virtual_mailbox_domains = mysql:/etc/postfix/sql/virtual_domains_maps.cf  

我必须smtpd_recipient_restrictions防范任意的开放中继。

在我的 Exim MTA 上,我会对每封发出的消息进行签名。我明白 Postfix 的意义smtpd_sender_resrictions,但我似乎无法让它们在这里做我想做的事情。

答案1

我能够将通过队列进入的消息直接发送pickup到 amavis 的 10026 端口,以便对它们进行 DKIM 签名。

这些消息要么是由我服务器上的 Drupal 网站(我信任)生成的,要么由登录其 Roundcube 网络邮件的用户生成。

我刚刚将这两个参数添加到了现有的pickup传输中/etc/postfix/master.cf

    pickup fifo n - - 60 1 pickup
      -o smtpd_tls_security_level=encrypt
      -o content_filter=smtp-amavis:[127.0.0.1]:10026

(谢谢blog.purrdeta.com用于指针)

传输smtp-amavis已在队列中定义master.cf并被传入的消息使用smtpd

我花了一段时间才意识到这些消息是通过接收队列传入的,因此不会受到smtpd_sender_restrictions我最初问题的影响。为了意识到这个错误,我必须感谢非常清楚Postfix 架构说明

相关内容