Dea*_*ler 4 postfix amazon-ec2 amazon-ses
我正在使用 Amazon SES,它在 postfix master.cf 中看起来像这样......
aws-email unix - n n - - pipe
flags=R user=dhiller argv=/usr/bin/perl -I/opt/amazon/ses /opt/amazon/ses/ses-
send-email.pl -r --verbose -k /opt/amazon/ses/aws_credentials.conf -e https://em
ail.us-east-1.amazonaws.com -f support@alvazan.com ${recipient}
Run Code Online (Sandbox Code Playgroud)
我希望 support@alvazan.com 会覆盖发件人地址,但是从 wordpress 发送时似乎不起作用,尽管如果我使用命令行发送它可以工作。
任何人都知道如何配置 postfix 以在调用上面的 amazon perl 脚本之前将收到的所有电子邮件更改为具有发件人地址,以便我的发件人地址正确?
谢谢,院长
我相信解决方案是通过canonical(5)
映射工具,它描述了要使用守护程序执行的地址清理cleanup(8)
:
The optional canonical(5) table specifies an address mapping
for local and non-local addresses. The mapping is used by the
cleanup(8) daemon, before mail is stored into the queue. The
address mapping is recursive.
...
Typically, one would use the canonical(5) table to replace
login names by Firstname.Lastname, or to clean up addresses
produced by legacy mail systems.
Run Code Online (Sandbox Code Playgroud)
此地址清理可以对本地提交 ( /usr/sbin/sendmail
) 和远程提交(通过 SMTP)执行——如果 Wordpress 通过 SMTP 发送邮件。您可能需要将您的 Wordpress 主机名添加到local_header_rewrite_clients
.
您向命令提供一个纯文本表(通常是/etc/postfix/canonical
)postmap(1)
以构建索引数据库。如果From:
来自 Wordpress 的始终相同(wordpress@alvazan.com
例如),则条目将是:
wordpress@alvazan.com support@alvazan.com
Run Code Online (Sandbox Code Playgroud)
如果From:
来自 Wordpress 的更改,但域始终相同,您可以使用:
@alvazan.com support@alvazan.com
Run Code Online (Sandbox Code Playgroud)
如果From:
真的可以是任何东西并且你总是想要support@alvazan.com
在From:
标题中,你可以使用正则表达式支持。我对此有点怀疑,但这是一个选择:
/./ support@alvazan.com
Run Code Online (Sandbox Code Playgroud)
您应该将canonical_classes
变量设置为envelope_sender, header_sender
. (默认情况下,它还包括envelope_recipient
and header_recipient
;不理会它可能不会有什么坏处,但是(尤其是使用贪婪的正则表达式选项)可能是灾难性的。这取决于此特定服务器的使用方式。)
我建议在深夜进行测试,并确保在进行所有更改后测试进出系统的邮件。并且不要忘记将您的配置保持在某种源代码控制之下。(但你知道这一切。)
归档时间: |
|
查看次数: |
1495 次 |
最近记录: |