我们有用于应用程序电子邮件的 SMTP 服务器,应执行以下操作:
- 更改所有电子邮件的“发件人”
- 使用 DKIM 签署电子邮件
我已经使用 smtp_generic 设置了 postfix 重写。
默认流程如下:
- 电子邮件到达 postfix
- OpenDKIM 将对其进行签名
- smtp_generic_maps 将更改标头
- 电子邮件将发送
问题:默认情况下,smtp_generic_maps 将覆盖 DKIM 标头。
有什么建议吗?示例,如何更改顺序?非常欢迎使用 Master.cf 示例。我想有一种方式可以为这两个任务创建单独的后缀实例。一个实例将执行“发件人”重写(smtp_generic_maps),第二个实例将添加 DKIM 并将其发送出去。
这里有类似的问题,遗憾的是没有来自 master.cf 文件的示例 ☹
Chook 发帖称:“我通过使用 postfix 高级过滤器并在最后阶段添加 opendkim milter 解决了这个问题。”
配置为:
主配置文件
# Milter configuration
milter_default_action = accept
milter_protocol = 6
smtpd_milters = inet:127.0.0.1:8891
non_smtpd_milters = $smtpd_milters
opendkim.conf
PidFile /run/opendkim/opendkim.pid
Mode sv
Syslog yes
SyslogSuccess yes
LogWhy yes
UserID opendkim:opendkim
Socket inet:8891@localhost
Umask 002
SendReports yes
SoftwareHeader yes
Canonicalization relaxed/relaxed
Selector default
MinimumKeyBits 1024
KeyTable /etc/opendkim/KeyTable
SigningTable refile:/etc/opendkim/SigningTable
ExternalIgnoreList refile:/etc/opendkim/TrustedHosts
InternalHosts refile:/etc/opendkim/TrustedHosts
OversignHeaders From