我正在寻找一个 MTA(在 Linux 上运行),以便根据电子邮件地址以及可选的发件人自动回复和/或转发电子邮件。
目前,当前的 MTA(Postfix)是 subdomain.domain.tld 的目的地,但该域名很快将不复存在。我如何设置 MTA(如 Postfix、Exim)来执行以下操作:
- 如果有一封电子邮件发送至important@subdomain.domain.tld,且发件人来自@domain.tld,则发送自定义自动回复。
- 如果有电子邮件发送至important@subdomain.domain.tld,且发件人不是来自@domain.tld,则发送自定义自动回复并将邮件转发至important@newdomain.tld
- 如果有电子邮件发送至@subdomain.domain.tld,则发送带有通用“此用户/电子邮件地址不存在”消息的自动回复。
- 如果有电子邮件发送至@subdomain.domain.tld,请将其删除。
有效用户列表包含大约 50 个用户,并且不会增长。目前它是一个纯文本文件。Postfix 能够完成这项任务吗?如果可以,有什么好的示例或指南吗?我可以轻松地从 Postfix 更改为另一个可能更适合此任务的 MTA。
6
最佳答案
1
在脚本中实现您想要的逻辑很容易。
然后,使用 Postfix,我会在文件中设置一个脚本调用别名/etc/aliases
,例如以管道开头的别名,例如:
important |/usr/local/bin/autoreply.py
将所有东西重定向到该电子邮件,例如
mydestination = subdomain.domain.tld
luser_relay = important@subdomain.domain.tld
local_recipient_maps =
(文件中的记录mydestination
需要这个值来实际指定地址)。important
aliases
important@subdomain.domain.tld
或者,可以使用虚拟别名映射以更安全(地址保留)的方式完成重定向。在这种情况下,您仍然需要在 中使用管道别名/etc/aliases
,因为这是唯一可以发生这种情况的地方,但mydestination
您不必设置 和其他 ,而是设置virtual_alias_domains
并将virtual_alias_maps
所有内容重定向到该地址。在这种情况下,脚本地址不能在该域中。例如,在 中main.cf
:
virtual_alias_domains = subdomain.domain.tld
virtual_alias_maps = hash:/etc/postfix/virtual
mydestination = another.subdomain.domain.tld
该文件/etc/postfix/virtual
将包含:
@subdomain.domain.tld important@another.subdomain.domain.tld
此处的目标必须与aliases
文件中的用户部分和中的域名相匹配mydestination
,并且不能包含subdomain.domain.tld
其自身。
|
–
but this domain will soon cease to exist
– 我想您正在寻找域名消失前的临时解决方案?为什么 Postfix 不能满足您的要求?您尝试过吗?–
–
–
–
|