如何强制 Postfix SMTP 使用 AUTH(SASL?)并拒绝匿名连接?

如何强制 Postfix SMTP 使用 AUTH(SASL?)并拒绝匿名连接?

以下代码片段已添加到 postfix 的 main.cf 文件中:

smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtpd_sasl_security_options = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination

我有点困惑,为什么上面的参数中有时会出现“smtp”,有时又会出现“smptd”,但我猜当前的名称是正确的。

为什么虽然我指定了上述参数,但是却可以在没有 AUTH 的情况下连接到 SMTP,而它们应该强制 SMTP 客户端进行 AUTH?

我想拒绝匿名连接。

答案1

好的,看来我还必须添加这一点:

smtpd_delay_reject = yes
smtpd_client_restrictions = permit_sasl_authenticated, reject

如此处所述: http://www.postfix.org/postconf.5.html在 smtpd_sasl_auth_enable 下

答案2

独立的 postfix 没有 SASL 功能,您必须安装 Cyrus 或 Dovecot。

查看 postfix 官方文档。

http://www.postfix.org/SASL_README.html#server_sasl

答案3

好的,所以我认为完全阻止 SMTP 进行身份验证是没有意义的,因为这样邮件服务器甚至无法接收邮件。

如果我没记错的话,SMTP 必须对匿名者保持开放,并允许将邮件发送到本地邮箱。

当然,如果它能阻止向其他域发送电子邮件(用于匿名连接)那就好了,但这应该是默认配置。

相关内容