在配置为通常直接发送邮件(互联网站点)的后缀邮件服务器上,我想对某些接收域(在此示例中仅使用 gmail.com 保持简单)实施条件标头检查,以让后缀使用智能主机。但是,它并没有通过 smarthost smtp.google.com 进行身份验证,而是继续直接发送地址为:*@gmail* 的邮件(如果我故意设置了错误的密码,它不会抱怨)。
我在 /etc/postfix/ 中创建了以下文件:
中继密码:
smtp.google.com [email protected]:mypassword
header_checks:
^To: <*@gmail*>/ FILTER relay:smtp.gmail.com:25
并在 main.cf 中使用附加选项引用它们:
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/relay_passwd
header_checks = regexp:/etc/postfix/header_checks
现在我对文件进行了后映射(并且因为多次重新启动后缀):
# postmap relay_passwd
# postmap header_checks
它会发出警告:
postmap: warning: header_checks, line 1: record is in "key: value" format; is this an alias file?
但我想这不是问题,是吗?无论如何,我一定是做错了什么。
我找到了以下线程,但它们并不是我想要的:
main.cf 中的顺序是否相关?header_checks 中的正则表达式可以吗?
这应该可以,您的继电器配置看起来不错。
此外,您不需要 postmap 正则表达式文件。
资料来源:马塞洛格