要求在端口 25 上进行 SASL 身份验证会拒绝我的所有传入电子邮件

要求在端口 25 上进行 SASL 身份验证会拒绝我的所有传入电子邮件

我正在使用这段代码/etc/postfix/master.cf来强制人们安全地“提交”通过使用 SMTPS 协议的端口发送电子邮件465。SMTPS 支持强制 TLS,我使用它来要求客户端首先“加密”使用强制 TLS 和第二层连接“认证”使用SASL机制。

smtps     inet  n       -       y       -       -       smtpd
  -o syslog_name=postfix/smtps
#
  -o smtpd_use_tls=yes
  -o smtpd_tls_wrappermode=yes
  -o smtpd_tls_mandatory_protocols=!SSLv2,!SSLv3,!TLSv1,!TLSv1.1
  -o smtpd_tls_cert_file=/etc/ssl/certs/server-rsa.cert
  -o smtpd_tls_key_file=/etc/ssl/private/server-rsa.key
  -o smtpd_tls_eccert_file=/etc/ssl/certs/server-ecdsa.cert
  -o smtpd_tls_eckey_file=/etc/ssl/private/server-ecdsa.key
#
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_sasl_type=dovecot
  -o smtpd_sasl_path=smtpd
  -o smtpd_sasl_security_options=noanonymous
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
#

这正如预期的那样。它实际上运行得很好!


我想用同样的方式保护端口25,但看起来这是不可能的,因为这个端口有两个入站功能即“提交”“中继接收” (延长这个端口的寿命是愚蠢的,我们应该尽快摆脱它)

端口上25只有 SMTP 协议,不支持强制 TLS!因此入站电子邮件,即“提交”和“中继接收”,所有可以启用的是机会性 TLS(可能被黑客入侵)所以我所能做的就是坏事“加密”稍后可以使用 DANE 进行增强(不容易被黑客入侵)

因此,25我对我的港口抱有希望“加密”在某些时候就足够了,但我不明白如何设置 SASL“验证”

我尝试使用这段代码,/etc/postfix/master.cf其中第一部分代码设置机会性 TLS,第二部分代码应该设置 SASL“验证”

smtp      inet  n       -       y       -       -       smtpd
  -o syslog_name=postfix/smtp
#
  -o smtpd_use_tls=yes
  -o smtpd_tls_security_level=may
  -o smtpd_tls_protocols=!SSLv2,!SSLv3,!TLSv1,!TLSv1.1
  -o smtpd_tls_cert_file=/etc/ssl/certs/server-rsa.cert
  -o smtpd_tls_key_file=/etc/ssl/private/server-rsa.key
  -o smtpd_tls_eccert_file=/etc/ssl/certs/server-ecdsa.cert
  -o smtpd_tls_eckey_file=/etc/ssl/private/server-ecdsa.key
#
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_sasl_type=dovecot
  -o smtpd_sasl_path=smtpd
  -o smtpd_sasl_security_options=noanonymous
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
  -o smtpd_relay_restrictions=permit_mynetworks,permit_sasl_authenticated,defer_unauth_destination
#

不幸的是,我发现了这一行:

  -o smtpd_client_restrictions=permit_sasl_authenticated,reject

一方面迫使客户“提交”通过端口发送电子邮件25"authenticate"另一方面拒绝所有来自其他 MTA 的“中继接收”电子邮件!

那么我怎样才能实现这两个目标:

  • 阻止任何人通过互联网“提交”25使用我的服务器上的端口发送电子邮件。
  • “中继接收”从其他 MTA 发往我的端口的所有电子邮件25

相关内容