imap-login:错误:无法初始化 SSL 服务器上下文:无法加载 SSL 证书 ee 密钥太商城

And*_*ria 7 imap dovecot

将我的服务器升级到 20.04。现在我无法通过 dovecot 使 IMAP 工作。我得到:

Aug  1 23:25:53 defaria dovecot: imap-login: Error: Failed to initialize SSL server context: Can't load SSL certificate: error:140AB18F:SSL routines:SSL_CTX_use_certificate:ee key too small: user=<>, rip=184.182.63.133, lip=208.113.131.137, session=<iKgXGN+rCIC4tj+F>
Run Code Online (Sandbox Code Playgroud)

我找到了很多解决这个问题的方法,但似乎都没有。我已经生成并重新生成了服务器密钥、签名证书等,并配置了 dovecot 来查看它们,但我得到的只是这个神秘的错误消息。我之前已经很好地配置了这一切,只是从 18.04 -> 20.04 更新打破了这个。

我怎样才能解决这个问题?一步一步......我应该如何生成证书和密钥并将它们正确配置到 dovecot 以便 imap 再次工作?

有趣的是我可以通过 telnet 驱动一个会话到 imap 并且我可以登录访问消息。但是当我尝试对我的邮件客户端(thunderbird)做同样的事情时,我将上述错误写入/var/log/mail.log

小智 14

这些解决方案都不适合我,因为/usr/share/dovecot/dh.pem已经存在并且是所需的 4096 位。

事实证明,解决方案就像删除/var/lib/dovecot/ssl-parameters.dat文件一样简单,然后dovecot使用以下命令重新启动:

sudo systemctl restart dovecot
Run Code Online (Sandbox Code Playgroud)

  • 该手册还指出要删除 ssl-parameters.dat,因为它是以前版本的遗留物,在新版本中不再需要 ssl_dh https://doc.dovecot.org/configuration_manual/quick_configuration/#ssl-and-plaintext-authentication (4认同)

小智 10

我需要将以下内容添加到我的/etc/dovecot/conf.d/10-ssl.conf文件中:

ssl_dh = </usr/share/dovecot/dh.pem
Run Code Online (Sandbox Code Playgroud)

dh.pem在我的情况下,该文件确实已经存在,但是 YMMV。


moo*_*moo 0

您的问题与以下问题类似(但不相同):

我当前没有运行 dovecot,所以我无法测试此解决方案,但您应该能够通过编辑本地 dovecot 配置来调整 dovecot 的密码设置(不是系统范围内的)。

尝试添加以下行/etc/dovecot/conf.d/10-ssl.conf

ssl_cipher_list = HIGH:!DH:!aNULL
Run Code Online (Sandbox Code Playgroud)

您可以尝试在 SSL 设置中增加 Diffie-Hellman 密钥长度。阅读 dovecot 文档以获取更多信息: https ://doc.dovecot.org/admin_manual/ssl/dovecot_configuration/