Hi,

I am currently configuring an e-mail server with OpenSMTPD. While it is 2023, I am aware of the fact that some remote mail servers will support insecure TLS protocols or fall back to plaintext. Because of that, I want to advertise legacy TLS support (TLSv1.0 and up), for port 25 while keeping modern TLS versions (TLSv1.2-1.3), for submission.

An excerpt of my current config is:

    /etc/mail/smtpd.conf
    . . .
    listen on lo0 port 25  tls pki my.server.com protocols "all"
listen on lo0 port 587 tls-require pki my.server.com protocols "secure" auth <virtual_creds>

The strings I have used ("all", "secure") come from: man 3 tls_config_parse_protocols, which is referenced in: man smtpd.conf under the "protocols" keyword.

A quick syntax check:

    $ doas smtpd -n

... shows no issues.

When I test this via:

openssl s_client -connect 127.0.0.1:25 -starttls smtp -tls1

... I cannot conduct a regular interactive SMTP transaction - the connection is established and then drops before I can: EHLO example.com and so on.

Am I specifying this correctly ? I tried enclosing "all" and "secure" in double quotes, but testing with: openssl does not seem to work when explicitly specifying TLSv1.0, TLSv1.1. It seems that OpenSMTPD is only happy if the connection is TLSv1.2 or TLSv1.3.

Thanks,

-J

Reply via email to