我知道的configuration设置smtpd_tls_security_level其中encryption需要传入smtpd连接完成SSL / TLS, 可能只是一个安全连接的首选项。
我想知道的是:
笔记…我正在使用:
是的,你的Postfix会拒绝传入的连接,并生成一个SMTP错误,这将导致错误消息被返回到原始发件人。 通常,SMTP错误是纯文本,限制了非技术发件人将会理解/从中学习多less。
注意在该手册中该选项是坚决不鼓励的:
您可以执行TLS的使用,以便Postfix SMTP服务器宣布STARTTLS并通过设置
smtpd_tls_security_level = encrypt接受没有TLSencryption的邮件。 根据RFC 2487,在公共引用的Postfix SMTP服务器的情况下,这不能被应用。 这个选项在默认情况下是closures的,应该只能使用。
传闻证据似乎表明它确实有助于防范垃圾邮件,但是我还没有看到有多less公共域名仍然不支持TLS的数字,从而拒绝了多less真正的邮件。
我手边没有Postfix部署,但是我希望你的SMTP头文件已经提供了关于传入连接是否通过SSL / TLS的信息,比如sendmail的做法
Received: from mail.example.org (mail.example.org[192.168.0.1]) by example.com (8.14.4/8.14.4) with ESMTP id s96Md0B2019727 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL) for <[email protected]>; Tue, 7 Oct 2014 00:39:06 +0200
编辑:获取Postfix中logging的信息需要在main.cfconfiguration文件中设置smtpd_tls_received_header = yes ,并且会导致一个类似的头文件:
Received: from host.example.com (host.example.com [192.168.0.2]) (using TLSv1 with cipher cipher-name (actual-key-size/raw-key-size bits)) (No client certificate requested)
只有你自己的邮件基础设施(终点)的头信息应该被认为是可信的,其他头可以在传输中被修改。
如果您有smtpd_tls_security_level = encrypt,并且发送邮件的服务器无法协商TLS会话,则发送服务器有责任通过未送达报告电子邮件通知发件人。 一个服务器不会这样做是非常糟糕的。 在您甚至知道电子邮件的发件人或收件人之前,无法在收件人的服务器上执行SSL / TLS故障。