我开始使用 Thunderbird。发送电子邮件时,它显示错误,提示
发送消息失败。无法与对方安全通信:请求的域名与服务器的证书不匹配。必须更正与 mail.mysite.com 相关的配置。
我拥有为 mysite.com 和 mail.mysite.com 颁发的 Let's Encrypt SSL 证书。安全网站正在网络上运行。
在错误窗口中,当我尝试不带端口的 mail.mysite.com 时,Thunderbird 可以验证我的 SSL 证书。但是,它找不到 mail.mysite.com:465 的证书。它找到了另一个证书,即 Starfield 证书,这是我的 Web 服务器默认使用的证书。
我使用 Godaddy,他们建议在外发服务器中使用 mail.mysite.com 和 SMTP 端口 465 进行 SSL。Thunderbird 的默认端口也是 465。
为什么添加端口会导致证书不同?有办法解决这个问题吗?
答案1
证书适用于主机,而不是主机上的端口。因此证书对该主机上的任何端口都有效。
但是,主机证书是由服务于该主机上的一个端口(或多个端口)的服务器进程向客户端提供的。因此,您可以对邮件服务器和 Web 服务器使用相同的证书,但您仍必须在两个应用程序中配置正确的证书。
端口 465 是 smtps(带 SSL 的 SMTP)的标准端口。因此,您应该检查该端口上的服务器证书配置。
当您使用没有端口的 mail.mysite.com 时,没有 SSL 的 SMTP 的标准端口是 25。可以连接到端口 25,然后使用 STARTTLS 启动加密。如果您的客户端在您连接到端口 25 时没有抱怨,则您的服务器配置为使用 STARTTLS 在端口 25 上显示不同的(正确的)证书,或者您的客户端不使用 STARTTLS。没有 STARTTLS,就没有加密,因此不需要提供或验证证书。