如何让 Postfix 重写收件人地址以包含多个收件人?

如何让 Postfix 重写收件人地址以包含多个收件人?

我正在尝试设置 Postfix,以将发送至 的电子邮件的目的地重写为 ,example@myhost而不是似乎已发送到[email protected][email protected]。我正在使用 LDAP 查找将其与 FreeIPA 绑定,使用与用户帐户绑定的电子邮件地址。

我的文件中的相关行(我认为)main.cf(已编辑,将真实域名替换为“ example.com”,将 IP替换为192.0.2.0/24)如下:

alias_maps = hash:/etc/aliases, proxy:ldap:/etc/postfix/ldap-aliases.cf
masquerade_domains = myhost.example.com, example.com
mydestination = $myhostname, myhost.example.com, example.com, localhost.$mydomain, localhost
myhostname = myhost.example.com
mynetworks = 192.0.2.0/24, 127.0.0.0/8
relayhost = [otherhost.example.com]
smtp_generic_maps = ldap:/etc/postfix/ldap-generic.cf
virtual_alias_maps = ldap:/etc/postfix/ldap-generic.cf

ldap-aliases.cf

server_host = ldaps://ipa1.example.com
search_base = cn=users,cn=accounts,dc=example,dc=com
query_filter = (&(uid=%u)(mail=*))
result_attribute = mail
bind = yes
bind_dn = uid=postfix,cn=sysaccounts,cn=etc,dc=example,dc=com
bind_pw = example_password
version = 3

ldap-generic.cf与 相同ldap-aliases.cf,但添加了以下行:

domain = myhost.example.com, example.com

到目前为止,发送到该地址的电子邮件似乎[email protected]发送到[email protected][email protected],但只有一个To:标头说明[email protected]。我希望它显示所有地址,而不仅仅是第一个。

答案1

alias_maps修改信封收件人而不篡改标题。看看是否重写邮件头,或将其标记为无效关于 Postfix 地址重写 README。

Postfix 2.1 及更早版本始终会重写邮件头地址,并将 Postfix 自己的域信息附加到 Postfix 认为不完整的地址。虽然重写邮件头地址对于本地邮件来说是可以的,但对于远程邮件则不合适。

Postfix 2.2 版本让您可以选择完全不重写来自远程 SMTP 客户端的邮件头,或者将此类邮件头中的不完整地址标记为无效。

相关内容