升级 Ubuntu Linux 18.04 上的 SMTP 服务器以支持 TLS 1.2

升级 Ubuntu Linux 18.04 上的 SMTP 服务器以支持 TLS 1.2

客户端有一个在 Ubuntu 18.04 上使用 Apache 托管的内部网。

当我通过它更新员工信息时,会发送一封电子邮件,但失败并显示以下错误: SMTP 错误:421 4.7.66 不支持 TLS 1.0。请升级/更新您的客户端以支持 TLS 1.2。请访问 https://aka.ms/smtp_auth_tls。

(SMTP 错误:421 4.7.66 不支持 TLS 1.0。请升级/更新您的客户端以支持 TLS 1.2。访问https://aka.ms/smtp_auth_tls。

它还显示一些 CakePHP 错误,不确定它们是否相关。

这让我认为它与服务器无关,因为该站点托管在 Linux 机器上,并且我被重定向到 Microsoft 页面,但我可能错了。因此,客户端是什么意思?我用来访问页面的 Windows 设备应该已经配置为能够使用 TLS 1.2。它是指发送电子邮件的 Office 365 帐户吗?

我无法访问 Office 365 门户,所以如果是这种情况,我必须联系客户尝试可能的解决方案。

我尝试过的事情:

  1. 仅在访问该页面的 Windows PC 中的 inetcpl.cpl 中启用 TLS 1.2。
  2. SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1 -TLSv1.2/etc/apache2/mods-enabled/ssl.conf服务器中定义。

答案1

(这开始是一条评论,但变得有点长)

你为什么要升级服务器?错误消息明确指出问题出在你的 SMTP 上客户。您在此处发布的错误消息甚至告诉您 SMTP 客户端是 cake 的一部分。但是根据官方文档(https://book.cakephp.org/4/en/core-libraries/email.html#configuring-transports) 无法更改 Cake 使用的 TLS 版本。

我认为这是 Cake 开发人员的一个重大疏忽,应该将其报告为错误,而不是功能请求。

请注意,Cake 实际上并没有实现 SSL/TLS 加密 - 这是由 OpenSSL 处理的 - 但目前您需要通过 Cake 才能使用它。

yourcode -> cake -> openssl -> internet -> SMTP server

同时,您要么需要从头开始编写自己的传输机制,要么使用不同的邮件发送库,要么使用 SMTP 中继。

相关内容