CakePHP 3 SMTP TLS 配置

问题描述 投票:0回答:1

我在通过 SMTP 加密(带 TLS 的 ssl)连接到电子邮件服务器时遇到问题。这是 Kerio Connect 服务,连接工作了多年,但在更新后突然停止。我尝试了端口 25 和 465。我尝试了带 tls 和不带 tls 的 ssl,但没有任何效果。证书是正确的,并且几个小时前一切正常。我不知道还能尝试什么。我收到的错误消息是:

错误:14090086:SSL例程:ssl3_get_server_certificate:证书验证失败 错误:140770FC:SSL 例程:SSL23_GET_SERVER_HELLO:未知协议

编辑:也许可能是TLS的版本,但我没有找到任何选项来强制TLS1.2检查是否有帮助。

cakephp smtp cakephp-3.0 starttls
1个回答
0
投票

在我的例子中,要使用 CakePHP 3.3 强制使用 TLS 1.2,我通过编辑以下文件解决了该问题:

app/vendor/cakephp/cakephp/src/Network/Socket.php 第 91 行

STREAM_CRYPTO_METHOD_TLS_CLIENT 替换为 STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT

您必须至少使用 php 5.6openssl 1.0.1。我希望这有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.