RFC 2847声明
公开引用的SMTP服务器不得要求使用STARTTLS扩展来在本地传送邮件。 此规则防止STARTTLS扩展损坏互联网SMTP基础结构的互操作性。 公开引用的SMTP服务器是一个SMTP服务器,它运行在Internet邮件地址右侧的MXlogging(或Alogging,如果MXlogging不存在)中列出的Internet主机的端口25上。
因此,为了符合RFC,我必须考虑到另一个代理可能会尝试连接到我的电子邮件服务器而不使用TLS,然后以纯文本格式发送密码,是吗?
如果我违反这个规则,只允许encryption的电子邮件连接(即在端口454,993和995,但没有其他人),其他电子邮件服务一般能够发送到我的服务器?
您可以configuration您的服务器,使其接受来自不同端口(587)的用户的外发电子邮件,并且只允许在那里使用TLS。 在标准端口25上,防止任何types的用户login,以免有人不小心使用它并在明确发送密码。
据我了解,这不会中断RFC,因为它谈到了其他服务器如何与您的服务器交谈,向用户发送电子邮件。 在面向用户的方面,您并不受任何RFC的约束,并且可以自由地执行任何希望实施TLS的策略,因为它在所有主要客户端上都受支持。
为获得最佳兼容性,您应允许未encryption的一般邮件连接,因为某些客户端不支持STARTTLS 。
对于用户的邮件客户端(发送密码的地方),您应该要求尽可能最好的encryption。
如果我违反这个规则,只允许encryption的电子邮件连接(即在端口454,993和995,但没有其他人),其他电子邮件服务一般能够发送到我的服务器?
不,他们不会。 邮件服务器之间的邮件传递是通过使用DNS查找MXlogging来查找负责收件人域的邮件服务器来完成的。 这个logging包含一个主机名,然后这个主机将在端口25被联系。没有办法以某种方式configuration一个不同的端口,即如果端口25上没有服务器,那么交付将失败。
有两件事可以区分:
RFC谈到A publicly-referenced SMTP server ,意思是一个MTA。
MTA通常在3个不同的TCP端口上侦听SMTP(S):
对于STARTTLS,如果我们以Postfix为例,你可以有3种不同的configuration:
现在真正的问题是:目前太多的MTAconfiguration不当,不支持STARTTLS,这意味着在你的服务器上要求它可能会导致你的一些电子邮件没有被交付,或者你的服务器将无法接收来自发件人的电子邮件MTA不支持STARTTLS。
为了加速此举,Google在其透明度报告中显示了在传输中encryption的电子邮件的百分比。 他们甚至走得更远 ,现在显示红色的挂锁,当他们没有encryption。
但是,太多的服务器仍然不支持STARTTLS,这意味着您可能会面临太多的问题,因为要求在端口25上。因此,我可以为您configuration的build议如下: