DNSSEC/DANE¶
b1gMailServer unterstützt ab Version 2.8.3277 die Validierung von TLS-Verbindungen per DNSSEC-gesichertem TLSA-Record (auch bekannt als DNSSEC/DANE).
Validierung dritter Mailserver¶
Damit b1gMailServer TLS-Verbindungen zu anderen Mailservern bei der Auslieferung von Outbound-Mails validieren kann, muss der verwendete DNS-Resolver DNSSEC unterstützen. Bei vielen Serverprovidern unterstützt der Standard-DNS-Server dies bereits. Dabei ist zu beachten, dass die Validierung schon auf dem DNS-Server erfolgt, die letzte "Strecke" zwischen DNS-Server und eigenem Server also nicht validiert wird. Wenn sich DNS-Server und eigener Server also nicht im gleichen, 100%ig vertrauenswürdigen Netz befinden, wird dringend empfohlen, einen eigenen DNS-Resolver mit DNSSEC-Validierung auf dem eigenen Server zu betreiben und in der /etc/resolv.conf als einzigen Resolver einzutragen.
DNSSEC-Support prüfen¶
Ob DNSSEC unterstützt wird, lässt sich mit dem Tool dig herausfinden (muss ggf. per Paket-Manager nachinstalliert werden):
dig +dnssec bund.de | grep flags
Wird DNSSEC unterstützt und wurde die DNS-Antwort korrekt validiert, sollte man in der Liste der Flags ad finden:
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 2, AUTHORITY: 6, ADDITIONAL: 9
; EDNS: version: 0, flags: do; udp: 4096
DNSSEC-/DANE-Validierung aktivieren¶
Sofern DNSSEC-Support erfolgreich geprüft wurde (s.o.), müssen nur noch im b1gMailServer-Admin-Plugin auf der Seite E-Mail-Verarbeitung die Optionen Nach Möglichkeit TLS verwenden? und DNSSEC und DANE-Verifizierung aktivieren? aktiviert und der Warteschleifendienst neu gestartet werden.
Validierung des eigenen Mailservers¶
TLS-Support¶
Damit dritte Mailserver die Verbindung zum eigenen Mailserver validieren können, muss zunächst b1gMailServer korrekt für TLS-Support konfiguriert sein. (Siehe Status-Indikator im Adminbereich.)
DNSSEC¶
Die Zonen der eigenen Domain müssen DNSSEC-signiert sein. Dies kann i.d.R. beim Domain-Provider aktiviert werden.
TLSA-DNS-Einträge¶
Dann muss für den MX-Server bzw. alle für diesen verwendeten Hostnamen sowie alle eingehenden SMTP-Ports ein TLSA-DNS-Eintrag angelegt werden. Der Eintrag ist anzulegen für die Subdomain '(port)._tcp.(host.name.xy)'. Der tatsächliche Wert des Eintrags setzt sich im wesentlichen aus einem Hash über das verwendete Zertifikat zusammen. b1gMailServer bietet im Admin-Plugin unter _Allgemein - Vorgeschlagener TLSA-Record: einen Button Anzeigen, mit dem der Wert bequem automatisch basierend auf dem b1gMailServer-TLS-Zertifikat berechnet werden kann.
Beispiel¶
Verwendet man die Domain b1gmail-dane.de, als MX-Server mail.b1gmail-dane.de und erhält man im Adminbereich als vorgeschlagenen TLSA-Record 3 1 1 0210F1D66CF21E1BB8970CD10C32F13B9E2E7FE76B27BEE006FFE64B2BCE7B81, so legt man den folgenden DNS-Eintrag an:
_25._tcp.mail.b1gmail-dane.de. IN TLSA 3 1 1 0210F1D66CF21E1BB8970CD10C32F13B9E2E7FE76B27BEE006FFE64B2BCE7B81
Prüfung¶
Zur Prüfung kann man z.B. den Mailserver-Checker von ssl-tools.net verwenden.
Achtung! SSL-Tools cacht die Ergebnisse, sodass man ggf. auf den Button 'Erneut prüfen' klicken muss, um aktuelle Ergebnisse zu erhalten.