我需要在本地主机上配置 postfix 作为 smtp 服务器的中继。此外部 smtp 服务器要求From:标头与经过身份验证的用户名一致。我想修复From:源自此本地计算机的所有消息的标头authenticated@example.com
我尝试了以下方法:
sender_canonical_maps
问题是:它似乎Reply-To:也覆盖了标头,我不需要这个,相反,我想广泛使用它。我是如何检查的:
sender_canonical_maps = regexp:/etc/postfix/sender_canonicalmain.cfREPLYTO="some.addr@gmail.com" mail my_addr@gmail.comReply-To为authenticated@example.com对比:
sender_canonical_maps从 main.cf 中删除REPLYTO="some.addr@gmail.com" mail -r authenticated@example.com my_addr@gmail.comReply-To问题是如果没有-r authenticated@example.com.
header_checks:显然不适用于From:字段(http://www.postfix.org/header_checks.5.html请参阅错误:部分)如何简单地From:在所有外发邮件上强制标头,而不Reply-To:让本地用户指定?
/etc/postfix/main.cf:
smtp_header_checks = regexp:/etc/postfix/header_check
Run Code Online (Sandbox Code Playgroud)
/etc/postfix/header_check:
/^From:.*/ REPLACE From: newsender@example.com
Run Code Online (Sandbox Code Playgroud)
测试用:
mail -s test -a 'Reply-To: a@domain.tld' me@me.com <<< test
Run Code Online (Sandbox Code Playgroud)
客户端的标头:
From: newsender@example.com
Reply-To: a@domain.tld
To: <me@me.com>
Run Code Online (Sandbox Code Playgroud)
在系统日志中你会看到
Nov 1 17:20:50 huuu postfix/smtp[4716]: 1B65481FAB18: replace: header From: root@huuu (root): From: newsender@example.com
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15301 次 |
| 最近记录: |