Enforce STARTTLS and verify MX certificates
Email is dying, and for a good reason: SMTP is kept insecure all around the world. As of 2021, the large majority of Mail eXchangers are still not enforcing STARTTLS nor providing a valid DANE or PKIX certificate. And even those few outbound MTAs which do enforce STARTTLS, mostly won’t verify the certificate on the other end.
Opportunistic STARTTLS is defeated by MITM attacks downgrading to plain-text, and the horrific trust-any default policy gets defeated by any self-signed or private certificate in the middle.
Let us enforce inbound / outbound STARTTLS and Mail eXanger certificate verification, shall we?
MTA-STS is NOT a solution. Outbound MTA which don’t talk STARTTLS to their peers would also omit to check for an _mta-sts
record.
This is nonsense from Google and Microsoft at the IETF, just like for OAuth2.
Using an additional protocol (namely HTTP itself protected by PKIX) for securing SMTP does not enforce ESMTPS, let alone certificate validation.
Enable MTA-STS if you wish, but unless you make STARTTLS and a valid trust chain mandatory at the SMTP level, some clear-text messages will still pass through your network pipes.
Inbound MX
530 5.7.0 Must issue a STARTTLS command first (https://nethence.com/smtp/)
_mta-sts IN TXT "STARTTLS is enforced anyhow (https://nethence.com/smtp/)"
Outbound relay
Recipient's Mail eXchanger does not offer STARTTLS capability (https://nethence.com/smtp/)
THE SAD STATE OF SMTP ENCRYPTION https://blog.filippo.io/the-sad-state-of-smtp-encryption/
POSTFIX AND STARTTLS https://pub.nethence.com/mail/postfix-tls
Let’s tune our cipher suites https://pub.nethence.com/security/ciphers
Strong Ciphers (see Other Software section) https://syslink.pl/cipherlist/
Applied Crypto Hardening https://bettercrypto.org/