我饶有兴趣地阅读了发送邮件指南可以禁用 TLS。我尝试通过在中添加以下行来对内部邮件执行此操作/etc/mail/access
:
Try_TLS:my.server NO
Try_TLS:localhost6.localdomain6 NO
Try_TLS:localhost.localdomain NO
Try_TLS:localhost NO
Try_TLS:127.0.0.1 NO
但是,它似乎不起作用,我仍然看到以下内容:
Received: from my.server (localhost6.localdomain6 [127.0.0.1])
by my.server (8.14.8/8.14.8) with ESMTP id s6H2Wanf004005
(version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO)
for <[email protected]>; Tue, 15 Jul 2014 10:32:36 +0000
Received: (from user@localhost)
by my.server (8.14.8/8.14.8/client) id s6H2WZfQ004004
for user; Tue, 15 Jul 2014 10:32:35 +0000
任何想法?
答案1
您可以在访问映射中使用多种与 TLS 相关的设置:
try_tls
当sendmail 是一个时使用客户(即发送电子邮件)tls_srv
适用于服务器,当 sendmail 是客户(即发送电子邮件)tls_clt
适用于客户端,当 sendmail 是服务器(即接受电子邮件)srv_features
当 sendmail 是时使用服务器(即接受电子邮件),并确定要提供的功能
srv_features
确定要提供哪些功能(在 EHLO 阶段),这包括 STARTTLS 以及其他协议选项,例如 PIPELINING、VERBose 和 AUTHenticate。参见现行法规第 5.1.4.15 节Sendmail安装及操作指南(PDF)了解详细信息。
tls_clt
是特定发送系统的 TLS 相关设置,用于确保在提交电子邮件时最低级别的加密和/或身份(客户端证书)已到位。
(还有tls_rcpt
根据收件人进行配置,通常用于强制加密,这里用处不大。)
您似乎已经编辑了标头,但我假设只有主机名,并且您正在通过本地主机上的 sendmail 发送。在此设置中,客户端 (MSP) 是一个作为邮件提交程序运行的 sendmail,submit.cf
默认情况下使用不支持任何启用的访问地图。
流程(请原谅 ASCII 艺术):
(submit.cf) (sendmail.cf)
email → sendmail-MSP →[127.0.0.1]→ sendmail
↗ ↕
queue runner access.db
(submit.cf)
因此,您应该在访问映射中使用:
srv_features:127.0.0.1 S
中的“S”srv_features
表示“不提供 STARTTLS”(还有一些其他标志,涉及身份验证和客户端证书等),然后access.db
使用makemap
.
这仅由守护进程 sendmail 服务器使用(不是提交部分或其队列运行程序)。
你可以添加FEATURE(access_db)
到您的submit.mc
,但这不是一件可以轻易进行的事情。看http://www.sendmail.com/sm/open_source/docs/m4/msp.html。