我有带有后缀的服务器。因为 google 不喜欢我的 IP 地址,所以我确实使用了外部 SMTP 服务器来发送电子邮件。我设置check_recipient_mx_access
并且我知道它在“前一段时间”工作。不幸的是,今天我看到它不再起作用了。
main.cf
有以下:
smtpd_sender_restrictions =
check_recipient_mx_access pcre:/etc/postfix/mxtransport
sender_dependent_relayhost_maps = hash:/etc/postfix.host/sender_relay
transport_maps = hash:/etc/postfix.host/transport
/etc/postfix.host/sender_relay
并且/etc/postfix.host/transport
是空的。
/etc/postfix/mxtransport
如下面所述:
/google\.com$/ FILTER smtp:[my.smtpd.com]:2500
/googlemail\.com$/ FILTER smtp:[my.smtpd.com]:2500
/protection\.outlook\.com$/ FILTER smtp:[my.smtpd.com]:2500
我尝试了几种方法,但它们似乎不起作用。
好的,谜团解开了。
check_recipient_mx_access
仅当电子邮件来自 SMTP 时才有效,例如端口 25 上的 telnet。如果我使用
sendmail
或mailx
消息直接进入队列(postdrop)并且这些检查似乎被跳过。