我有以下后缀配置:
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated
myhostname = d*****.net
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
virtual_alias_maps = hash:/etc/postfix/virtual
mydestination = d*****.net, gitlab, localhost.localdomain, , localhost
relayhost =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
以及以下 dovecot 10-auth.conf:
disable_plaintext_auth = no
这是我的邮件日志:
Jun 11 14:34:24 D***** postfix/master[13209]: warning: process /usr/lib /postfix/smtpd pid 1025 exit status 1
Jun 11 14:34:24 D****** postfix/master[13209]: warning: /usr/lib/postfix/smtpd: bad command startup -- throttling
Jun 11 14:35:24 D****** postfix/smtpd[1132]: fatal: in parameter smtpd_relay_restrictions or smtpd_recipient_restrictions, specify at least one working instance of: reject_unauth_destination, defer_unauth_destination, reject, defer, defer_if_permit or check_relay_domains
我要做的就是为 SMTP 启用纯文本用户名/密码授权。有什么建议可以实现这一点吗?
答案1
Postfix 正在询问当收到非您的域名的电子邮件时该怎么办。
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated reject_unauth_destination
这应该可以起作用并且它还可以阻止您将邮件转发给垃圾邮件发送者。
答案2
根据发布的日志的最后一行,您需要更改配置smtpd_relay_restrictions
以包含以下内容之一(就我个人而言,我会用它reject
来明确拒绝我不允许的任何内容):
reject_unauth_destination
defer_unauth_destination
reject
defer
defer_if_permit
check_relay_domains
该smtpd_relay_restrictions
选项(与 Postfix 中的大多数限制选项一样)与防火墙链非常相似iptables
- 与内容匹配的第一个规则获胜,如果没有其他匹配,则使用链中的最后一条规则,因此您必须将“catch-all”选项定义为链中的最后一个选项。