- Details
Mit dem am 5. Juli dieses Jahres veröffentlichten Sendmail Release 8.16.1 unterstützt der alteingesessene MTA erstmals DANE (DNS-Based Authentication of Named Entities).
Um DANE aktivieren zu können, muss Sendmail wie hier mit _FFR_TLSA_DANE kompiliert werden:
[root@c7 mail]# sendmail -d0.1 </dev/null
Version 8.16.1
Compiled with: DANE DNSMAP IPV6_FULL LDAPMAP LDAP_NETWORK_TIMEOUT LOG
MAP_REGEX MATCHGECOS MILTER MIME7TO8 MIME8TO7 NAMED_BIND
NETINET NETINET6 NETUNIX NEWDB=5.3 PIPELINING SASLv2 SCANF
SOCKETMAP STARTTLS TLS_EC TLS_VRFY_PER_CTX USERDB USE_LDAP_INIT
[...]
Einschalten in sendmail.mc:
define(`confDANE')dnl
Diese Konfiguration von DANE aktiviert gleichzeitig die nun notwendigen ResolverOptions use_dnssec und use_edns0.
Ganz einfach und schnell eingerichtet, Ende der Geschichte. Ja, was die Sendmail-Konfiguration für Opportunistic DANE betrifft, aber damit das in Sendmail (oder irgendeiner anderen Applikation) auch gemäß RFC 7672 funktioniert, müssen wir was kontrollieren und ggf. vorbereiten ...
- Details
Sendmail 8.16.1 (veröffentlicht am 5. Juli 2020) bringt in erster Linie Erweiterungen im Bereich TLS.
TLS
Die in Sendmail 8.15.2 bereits als FFR (For Future Release) vorhandenen session-basiert einstellbaren TLS Features sind jetzt offiziell unterstützter Bestandteil. Eingestellt werden können durch Semikolon getrennt folgende key=value Paare:
- ServerSSLOptions, ClientSSLOptions z.B. zur Einschränkung der erlaubten SSL-Versionen (siehe SSL_set_options(3))
- CipherList
- Cert- und KeyFile geben Zertifikats- und Schlüssel-Datei für diese Session an
- Flags (bisher 2)
- R für CRL (Certificate Revocation List) benötigt
- c, C zum Aus- bzw. Einschalten der neuen Option TLSFallbacktoClear (siehe unten)
Beispiel für Access-DB bei aktiviertem FEATURE `tls_session_features':
TLS_Clt_features:192.168.2.2 Options=SSL_OP_NO_TLSv1_2; CipherList=ALL:-EXPORT; Flags=C
Interoperabilitätsprobleme bei TLS kann Sendmail jetzt automatisch umschiffen, indem er nach gescheitertem Handshake die Verbindung zur Gegenstelle erneut aufbaut, dieses Mal ohne Verwendung von STARTTLS. Dieses Verhalten wird global durch die Konfiguration von TLSFallbacktoClear erreicht oder per Session durch Setzen des C-Flags der TLS_Clt_Features (siehe oben). Vor 8.16 konnte man lediglich für bekannte inkompatible Server statische TLS-Ausnahmen (Try_TLS:broken.server NO) einrichten.