端口 25“中继发送”和 TLS

端口 25“中继发送”和 TLS

问题:

我有一个 Postfix 服务器,其中 dovecot 正在运行。正在监听的端口是 和, 25其中最后两个端口具有强制 TLS。其他“电子邮件”端口未监听。465993

这意味着客户端的 MUA 必须使用端口465来发送电子邮件“提交”以及993电子邮件端口“恢复”. 这意味着每个端口一个功能(好的)

25另一方面,端口有三个功能,即电子邮件“中继发送”电子邮件“中继接收”和电子邮件“提交” (一团糟)

其他两个端口已经要求强制 TLS,现在我必须配置端口25以执行此操作。我知道 Postfix 用于配置此端口,因为它是 SMTP 端口。我还了解到/etc/postfix/master.cf我可以使用-o下面一行下的参数来配置端口25

smtp      inet  n       -       y       -       -       smtpd

我们在现场有一些嵌入式设备,它们无法使用 TLS,只能“提交”通过端口发送电子邮件25。这就是为什么该端口可以使用机会性 TLS 但不能使用强制 TLS。

我已经为入站请求即电子邮件“提交”和电子邮件“中继接收”像这样:

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_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_仅以 configure 开头的参数入站 请求,而参数以-o smtp_ (目前我没有)配置 出站要求。

问题:

现在我想知道……

  • 我应该为出站请求即“中继发送”在端口上25?可能出现什么问题?
  • 如果我为以下对象设置强制 TLS,会发生什么情况出站请求即“中继发送”在端口上25,并且某些目标服务器不支持强制 TLS 或机会性 TLS“中继接收”港口25
  • 机会性 TLS 应该设置为出站请求即“中继发送”在端口上25以避免出现问题?
  • 我知道机会性 TLS 并非 100% 安全,并且我知道可以使用 DANE 进行保护,但 DANE 究竟保护谁?“中继发件人”或者“中继接收器”? 那么 DANE 应该设置为入站或者出站要求?

答案1

除了从 Internet 接受电子邮件之外,您不需要将传入端口 25 用于任何其他目的:端口 465 用于(隐式 TLS)提交,对于出站 SMTP,您使用接收服务器的端口 25。

此外,在端口 25 上强制使用 TLS 并不是一个好主意,因为它会破坏向后兼容性,从而破坏几乎整个电子邮件基础设施。DANE (RFC 6698) 就是为了这个目的:让其他人知道你不需要向后兼容,并且即使有人(MitM)删除了扩展程序,也不会回退到未加密的连接250-STARTTLSRFC 3207)。

相关内容