Let's Encrypt has started issuing ECC certificates by default since Certbot 2.0. This is not a problem for modern web browsers, but Let's Encrypt certificates can be used for other purposes than HTTPS, too. Namely, some SMTP servers do not support ECC certificates, yet. If such server tries to establish STARTTLS
connection with Postfix that uses ECC certificates it fails.
The logs indicate there are no shared cipher despite, e.g., Wireshark shows the Client Hello in the TLS handshake clearly has common ciphers with the list configured via smtpd_tls_mandatory_ciphers = medium
.
postfix/smtpd[1337]: connect from mail.example.net[198.51.100.1]
postfix/smtpd[1337]: SSL_accept error from mail.example.net[198.51.100.1]: -1
postfix/smtpd[1337]: warning: TLS library problem: error:0A0000C1:SSL routines::no shared cipher:../ssl/statem/statem_srvr.c:2220:
postfix/smtpd[1337]: lost connection after STARTTLS from mail.example.net[198.51.100.1]
postfix/smtpd[1337]: disconnect from mail.example.net[198.51.100.1] ehlo=1 starttls=0/1 commands=1/2
The problem is caused by the type of certificate. Is it possible to get both ECC & RSA certificates from Let's Encrypt using Certbot? How to configure Postfix to use them both at the same time?