Postfix配置多个ISP客户端SMTP身份验证

时间:2020-01-09 10:43:03  来源:igfitidea点击:

我如何在Postfix SMTP客户端中支持多个ISP帐户(smarthost)来中继电子邮件?
例如:

只有Postfix版本v2.3 +通过全局中继主机参数设置的依赖于发件人的替代来支持多个ISP帐户。
打开您的main.cf文件:

# vi /etc/postfix/main.cf

如下添加或者修改设置:

smtp_sender_dependent_authentication = yes
sender_dependent_relayhost_maps = hash:/etc/postfix/relayhost_map
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/passwd
relayhost = [smtp.mycorp.com]:submission

创建/etc/postfix/relayhost_map文件:

# vi /etc/postfix/relayhost_map

追加如下配置(请注意,不包括默认的smtp.mycorp.com):

# Per-sender provider
[email protected]		[smtp.isp1.com]
[email protected]		[smtp.isp2.com]

创建更新/etc/postfix/passwd文件,如下所示:

# Per-sender authentication
[email protected]		[email protected]:password4isp1
[email protected]		[email protected]:password4isp2
# Login for the default relayhost
[smtp.mycorp.com]	defaultUsername:defaultPassword

保存并关闭文件。
重新启动后缀:

# postmap hash:/etc/postfix/passwd
# postmap hash:/etc/postfix/relayhost_map
# /etc/init.d/postfix reload

其中:

  • smtp_sender_dependent_authentication = yes:在Postfix SMTP客户端中启用依赖发件人的身份验证;仅在SASL身份验证中可用。
  • sender_dependent_relayhost_maps = hash:/etc/postfix/sender_relay:全局中继主机参数设置的依赖于发送者的覆盖。通过信封发件人地址和@domain搜索这些表。 DUNNO的查找结果将终止搜索,而不会覆盖全局relayhost参数设置。
  • smtp_sasl_auth_enable = yes:在Postfix SMTP客户端中启用SASL身份验证。默认情况下,Postfix SMTP客户端不使用身份验证。
  • smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
  • relayhost = [mail.myisp.net]:submission:设置默认的中继主机。