MTA-STS hängt im Testmodus fest: wie Sie sicher auf enforce umstellen
Die kurze Antwort
Bei mode: testing prüfen sendende Server das TLS Ihrer Mailserver, stellen aber trotzdem zu, wenn die Prüfung scheitert; sie melden es nur (RFC 8461 §5). Für enforce: Lesen Sie TLS-RPT-Berichte, bis sie sauber sind, stellen Sie sicher, dass jeder MX in der Richtlinie steht und ein gültiges Zertifikat für seinen eigenen Namen ausliefert, ändern Sie den Modus und ändern Sie die id in Ihrem _mta-sts-Eintrag.
Was ein Absender tut, Modus für Modus
Die Richtliniendatei legt fest, was ein sendender Server tut, wenn er zu einem Ihrer MX-Hosts keine sichere Verbindung aufbauen kann:
| Modus | Gültiges Zertifikat, MX in der Richtlinie | Prüfung scheitert |
|---|---|---|
none | Stellt zu, als gäbe es keine Richtlinie | Stellt zu |
testing | Stellt über TLS zu | Stellt trotzdem zu und meldet den Fehler |
enforce | Stellt über TLS zu | Stellt an diesen Host nicht zu; versucht einen anderen aufgeführten MX oder stellt in die Warteschlange und versucht es erneut |
Absender behalten Ihre Richtlinie max_age Sekunden lang und holen sie nur dann neu ab, wenn sich die id in Ihrem _mta-sts-TXT-Eintrag ändert. Ändern Sie die Datei, ohne die id zu ändern, wenden Absender mit zwischengespeicherter Kopie den alten Modus weiter an, bis max_age abläuft.
Was testing offen lässt und was enforce kaputt machen kann
- Der Testmodus schützt nichts. Wer STARTTLS entfernt oder mit einem falschen Zertifikat antwortet, erhält die Mail trotzdem: Im Testmodus stellt der Absender trotzdem zu. RFC 8461 §5
- Ein MX, der in der Richtlinie fehlt, erhält unter enforce keine Mail mehr. Absender stellen nur an Hosts zu, die auf eine mx:-Zeile passen. RFC 8461 §4.1
- Ein Zertifikat, das den MX-Host nicht nennt, scheitert. enforce verlangt ein gültiges, nicht abgelaufenes Zertifikat einer öffentlichen CA, das auf den MX-Hostnamen selbst passt. RFC 8461 §4.1
- Die Richtliniendatei muss exakt ausgeliefert werden. HTTPS auf mta-sts.<Ihre Domain>, unter /.well-known/mta-sts.txt, mit gültigem Zertifikat, als text/plain und ohne Weiterleitung. Ein Absender, der sie nicht abrufen kann, behält seine zwischengespeicherte Kopie, bis diese abläuft. RFC 8461 §3.3
Prüfen Sie Ihre MTA-STS-Richtlinie
Die kostenlose Domain-Prüfung liest Ihren _mta-sts-Eintrag und Ihre Richtliniendatei und nennt Ihnen den Modus, max_age, ob die Datei abgerufen werden konnte und welche MX-Hosts die Richtlinie auslässt.
Kostenlos, ohne Konto. Wir lesen nur öffentliches DNS und das, was Ihre Server jedem zeigen, der sich verbindet.
Schritt für Schritt beheben
Zuerst TLS-RPT veröffentlichen
Fügen Sie unter _smtp._tls.example.com einen TXT-Eintrag mit v=TLSRPTv1; rua=mailto:tls-reports@example.com hinzu. Absender schicken Ihnen dann einen täglichen Bericht über erfolgreiche und fehlgeschlagene TLS-Verbindungen (RFC 8460).
Die Berichte lesen, bis sie sauber sind
Suchen Sie nach Fehlern pro MX-Host. Eine Reihe sauberer Berichte über einen normalen Zeitraum des Mailverkehrs, oft ein paar Wochen, ist das Signal, dass enforce sicher ist.
Jeden MX mit der Richtlinie abgleichen
Jeder MX-Host muss auf eine mx:-Zeile in der Richtliniendatei passen. Ein Muster wie *.mail.example.com deckt nur ein Label ab.
Jedes MX-Zertifikat prüfen
Jeder MX muss ein gültiges, nicht abgelaufenes Zertifikat einer öffentlichen CA vorlegen, das seinen eigenen Hostnamen enthält. Ein internes oder selbstsigniertes Zertifikat scheitert unter enforce.
Auf enforce umstellen und max_age erhöhen
Ändern Sie die Datei auf mode: enforce und setzen Sie max_age auf mindestens eine Woche (604800 Sekunden).
Die id ändern
Ändern Sie den Wert id im _mta-sts-TXT-Eintrag, zum Beispiel auf das heutige Datum mit Uhrzeit. Genau das signalisiert den Absendern, die neue Richtlinie abzurufen.
Bevor Sie später einen MX hinzufügen, zuerst die Richtlinie aktualisieren
Fügen Sie die mx:-Zeile des neuen Hosts hinzu, ändern Sie die id, warten Sie max_age ab und leiten Sie erst dann Mail auf den neuen Host.
Häufige Fehler
Die Datei ändern, aber nicht die id
Absender, die die testing-Richtlinie zwischengespeichert haben, wenden sie weiter an, bis max_age abläuft, und das kann Wochen dauern.
Im Ergebnis von SkyQon: Wir rufen die Richtliniendatei selbst ab, daher kann unser Ergebnis enforce zeigen, bevor Absender es tun. Die id ist das, was sie zum Abrufen veranlasst.
Einen neuen MX hinzufügen, bevor die Richtlinie aktualisiert ist
Unter enforce verweigern Absender die Zustellung an einen Host, der auf keine mx:-Zeile passt.
Im Ergebnis von SkyQon: Ein Befund nennt jeden MX-Host, der zu keiner mx:-Zeile passt. Im Modus enforce sagt er, dass Absender diese Hosts ablehnen oder überspringen; im Modus testing, dass noch nichts abgelehnt wird.
Die Richtlinie hinter einer Weiterleitung ausliefern
Viele Webserver leiten standardmäßig weiter. RFC 8461 verbietet, für die Richtliniendatei einer Weiterleitung zu folgen, daher behandeln Absender MTA-STS als fehlend.
Im Ergebnis von SkyQon: Ein Befund, dass die Richtlinie nicht abgerufen werden konnte, mit dem Grund, etwa eine Weiterleitung oder ein anderer Content-Type als text/plain.
Ein max_age von Minuten
Absender rufen die Richtlinie dann ständig ab und fallen an einem schlechten Tag früher auf gar keine Richtlinie zurück.
Im Ergebnis von SkyQon: Ein Befund, wenn max_age unter einem Tag liegt.
Was SkyQon tut und was nicht
Was es findet
Ihren _mta-sts-Eintrag und Ihre Richtliniendatei: den Modus, max_age, ob jeder MX-Host zu einer mx:-Zeile passt, ob die Datei abgerufen werden kann und ob eine TLS-RPT-Adresse veröffentlicht ist.
Was Sie bekommen
In der kostenlosen Prüfung einen Befund zum Testmodus und zu MX-Hosts, die die Richtlinie auslässt. Bei einer überwachten Domain einen Alarm, solange die Richtlinie in testing bleibt oder einen MX-Host auslässt. Ab Pro die TLS-RPT-Berichte, die Absender Ihnen schicken, gelesen und zusammengefasst.
Was es nicht ist
Wir bewerten noch nicht jedes MX-Zertifikat für MTA-STS und ändern Ihre Richtliniendatei nicht. Prüfen Sie die MX-Zertifikate, bevor Sie auf enforce umstellen.
MTA-STS: häufige Fragen
Wie lange sollte ich im Testmodus bleiben?
Brauche ich TLS-RPT, damit MTA-STS funktioniert?
Was passiert mit Mail, wenn unter enforce ein MX-Zertifikat abläuft?
Schützt MTA-STS die Mail, die ich versende?
Ist MTA-STS dasselbe wie DANE?
Welches max_age sollte ich verwenden?
Was bewirkt mode: none?
Warum ist die id so wichtig?
Quellen
- RFC 8461 §3.1: der _mta-sts-TXT-Eintrag und seine id
- RFC 8461 §3.2: die Richtliniendatei, mode und max_age
- RFC 8461 §3.3: Abruf der Richtlinie (HTTPS, keine Weiterleitungen)
- RFC 8461 §4.1: Validierung von MX-Host und Zertifikat
- RFC 8461 §5: Anwendung der Richtlinie in jedem Modus
- RFC 8460: SMTP TLS Reporting (TLS-RPT)
Verwandte Seiten
Wissen, wann enforce sicher ist.
Die kostenlose Prüfung zeigt Ihren MTA-STS-Modus von heute. Ab Pro liest SkyQon Ihre TLS-RPT-Berichte, sodass Sie die Fehler sehen, bevor Sie umstellen.