Postfix 动态 smtp_helo_name

Wil*_*iam 5 smtp postfix

我有一个邮件服务器,可以为两个不同的域中继电子邮件。我希望smtp_helo_name根据域的不同而有所不同。我假设没有办法通过检查邮件标头来做到这一点,所以我想知道是否有一种方法可以通过将一个域的邮件发送到一个 IP 地址,并将另一个域的邮件发送到另一个 IP 地址来做到这一点。

我尝试修改 master.cf 来执行此操作:

localhost:smtp      inet n - n - - smtpd
ip1:smtp inet n - n - - smtpd
ip2:smtp  inet n - n - - smtpd -o myhostnamee=example2.com
Run Code Online (Sandbox Code Playgroud)

并在main.cf中smtp_helo_name设置。$myhostname

我也尝试-o smtp_helo_name这样做,但都不起作用。任何建议都会很棒。

Jac*_*zny 2

这应该可行(但没有尝试过):

sender_dependent_relayhost_maps为其他域定义单独的传输,然后使用main.cf 中的选项将邮件路由到此传输。

像这样的东西:

在“master.cf”中:

smtp-other      unix  -       -       n       -       -       smtp
     -o smtp_helo_name=my.other.helo.name
Run Code Online (Sandbox Code Playgroud)

在“main.cf”中:

sender_dependent_relayhost_maps = hash:/etc/postfix/relay_maps
Run Code Online (Sandbox Code Playgroud)

在“relay_maps”中:

my.other.domain    smtp-other:
Run Code Online (Sandbox Code Playgroud)

并运行“postmap /etc/postfix/relay_maps”