MTA-STS a TLS-RPT — šifrování přenosu e-mailů
Proč samotné STARTTLS nestačí
Většina e-mailových serverů dnes podporuje šifrování přenosu pomocí STARTTLS. Problém je, že STARTTLS je oportunistické — odesílající server se pokusí o šifrované spojení, ale pokud druhá strana neodpoví nebo spojení selže, pošle e-mail nešifrovaně. Útočník, který ovládá síťový provoz mezi servery, může šifrování aktivně potlačit (downgrade attack) nebo přesměrovat provoz na podvržený server (MX spoofing).
MTA-STS a TLS-RPT tyto slabiny řeší. MTA-STS umožňuje doméně vyžadovat šifrované spojení a ověřit identitu přijímajícího serveru. TLS-RPT poskytuje zpětnou vazbu — reporty o tom, zda se šifrované doručení daří, nebo kde selhává.
Co je MTA-STS
MTA-STS (Mail Transfer Agent Strict Transport Security) je standard definovaný v RFC 8461. Umožňuje doméně deklarovat, že její mailové servery podporují TLS a že odesílající servery mají odmítnout doručení, pokud se šifrované spojení nepodaří navázat.
Na rozdíl od oportunistického STARTTLS, kde selhání TLS vede k nešifrovanému doručení, MTA-STS říká: „Buď šifrovaně, nebo vůbec ne."
Jak MTA-STS funguje
- Odesílající server chce doručit e-mail na doménu
firma.cz. - Dotáže se DNS na záznam
_mta-sts.firma.cz— pokud existuje, doména MTA-STS podporuje. - Stáhne si politiku z
https://mta-sts.firma.cz/.well-known/mta-sts.txt. - Politika uvádí seznam povolených MX serverů a režim vynucování.
- Server naváže TLS spojení a ověří, že certifikát odpovídá deklarovanému MX serveru.
- Pokud ověření selže a politika je v režimu
enforce, e-mail se nedoručí.
Dva komponenty MTA-STS
MTA-STS vyžaduje nastavení dvou věcí:
1. DNS TXT záznam
TXT záznam na subdoméně _mta-sts signalizuje podporu MTA-STS a obsahuje identifikátor verze politiky:
_mta-sts.firma.cz IN TXT "v=STSv1; id=20260325T100000;"
| Parametr | Význam |
|---|---|
v=STSv1 |
Verze protokolu (povinné) |
id= |
Unikátní identifikátor politiky — při každé změně politiky ho musíte aktualizovat |
Hodnota id může být libovolný alfanumerický řetězec (max 32 znaků). Doporučuje se používat časové razítko ve formátu YYYYMMDDTHHmmss.
2. HTTPS politika
Textový soubor dostupný na https://mta-sts.firma.cz/.well-known/mta-sts.txt:
version: STSv1
mode: enforce
mx: mx1.firma.cz
mx: mx2.firma.cz
max_age: 604800
| Parametr | Význam |
|---|---|
version |
Verze (vždy STSv1) |
mode |
Režim: none, testing nebo enforce |
mx |
Povolený MX server (jeden řádek pro každý server, podporuje * jako wildcard prefix) |
max_age |
Doba platnosti politiky v sekundách (max 31 557 600 = 1 rok) |
Soubor musí být dostupný přes HTTPS s platným certifikátem. Subdoménu mta-sts.firma.cz je třeba nasměrovat na webový server (nebo hosting statických stránek), který tento soubor obsluhuje.
Režimy MTA-STS
| Režim | Chování |
|---|---|
none |
Politika je deaktivována — odesílající servery ji ignorují |
testing |
Odesílající servery politiku vyhodnotí, ale při selhání e-mail doručí i nešifrovaně; problémy hlásí přes TLS-RPT |
enforce |
Odesílající servery odmítnou doručit e-mail, pokud se nepodaří navázat ověřené TLS spojení |
Vždy začněte režimem testing. Přepněte na enforce teprve po vyhodnocení TLS-RPT reportů, které potvrdí, že všechny legitimní servery navazují TLS spojení bez problémů.
Co je TLS-RPT
TLS-RPT (SMTP TLS Reporting) je standard definovaný v RFC 8460. Funguje jako reportovací mechanismus pro politiky zabezpečení přenosu e-mailů (MTA-STS i DANE) — odesílající servery posílají vlastníkovi domény reporty o výsledcích TLS spojení při doručování e-mailů.
Princip je podobný jako u DMARC reportů, jen se místo autentizace e-mailů sleduje šifrování přenosu.
DNS záznam pro TLS-RPT
TLS-RPT se aktivuje jedním TXT záznamem na subdoméně _smtp._tls:
_smtp._tls.firma.cz IN TXT "v=TLSRPTv1; rua=mailto:firma.cz@rua.spfmonitor.com"
| Parametr | Význam |
|---|---|
v=TLSRPTv1 |
Verze protokolu (povinné) |
rua= |
Adresa pro příjem reportů — mailto: (e-mail) nebo https: (API endpoint) |
Reporty můžete směřovat na vlastní e-mailovou adresu nebo na službu, která je automaticky zpracuje. SPF Monitor reporty parsuje, vizualizuje a upozorní vás na problémy — nemusíte ručně procházet JSON soubory.
Pro příjem reportů na více adres oddělte adresy čárkou:
_smtp._tls.firma.cz IN TXT "v=TLSRPTv1; rua=mailto:firma.cz@rua.spfmonitor.com,mailto:tls-reports@firma.cz"
Co obsahují TLS-RPT reporty
Reporty se odesílají ve formátu JSON, typicky jednou denně. Obsahují:
- Doména a období — za jakou doménu a časový úsek report platí
- Úspěšná spojení — počet úspěšně navázaných TLS spojení
- Selhání — typ a důvod selhání (expirovaný certifikát, neplatný hostname, nepodporovaná verze TLS, porušení MTA-STS politiky)
- Zdrojový a cílový server — IP adresy a hostnames zapojených serverů
Postup nasazení MTA-STS a TLS-RPT
1. Ověřte stávající konfiguraci
Zkontrolujte, že vaše MX záznamy směřují na servery s platnými TLS certifikáty. Analyzujte svou doménu a ověřte, že SPF, DKIM a DMARC fungují správně — MTA-STS je další vrstva zabezpečení, která doplňuje autentizaci.
2. Aktivujte TLS-RPT
Začněte TLS-RPT reportingem ještě před zapnutím MTA-STS. Přidejte DNS TXT záznam:
_smtp._tls.firma.cz IN TXT "v=TLSRPTv1; rua=mailto:firma.cz@rua.spfmonitor.com"
Reporty začnete dostávat od serverů, které TLS-RPT podporují (Google, Microsoft a další velcí poskytovatelé). Data z reportů ukážou, zda se TLS spojení navazují úspěšně.
3. Připravte MTA-STS politiku v režimu testing
Vytvořte subdoménu mta-sts.firma.cz a nasměrujte ji na webový server s HTTPS. Na URL https://mta-sts.firma.cz/.well-known/mta-sts.txt zpřístupněte politiku:
version: STSv1
mode: testing
mx: mx1.firma.cz
mx: mx2.firma.cz
max_age: 86400
V režimu testing použijte kratší max_age (např. 86 400 sekund = 1 den), abyste mohli rychle reagovat na změny.
4. Přidejte DNS záznam pro MTA-STS
_mta-sts.firma.cz IN TXT "v=STSv1; id=20260325T100000;"
5. Sledujte TLS-RPT reporty
Vyčkejte minimálně 2–4 týdny a sledujte příchozí TLS-RPT reporty. Hledejte:
- Selhání TLS handshake
- Chyby certifikátů (expirované, nesprávný hostname)
- Servery, které nedokážou navázat šifrované spojení
Pokud se objeví problémy, opravte je dříve, než přepnete na enforce.
6. Přepněte na enforce
Jakmile reporty potvrzují bezproblémové TLS spojení, aktualizujte politiku:
version: STSv1
mode: enforce
mx: mx1.firma.cz
mx: mx2.firma.cz
max_age: 604800
Zvyšte max_age na 604 800 sekund (7 dní) nebo více. Nezapomeňte aktualizovat id v DNS TXT záznamu.
Kde hostovat MTA-STS politiku
MTA-STS politika musí být dostupná přes HTTPS na subdoméně mta-sts. Máte několik možností:
- Vlastní webový server — pokud už provozujete web na dané doméně, přidejte subdoménu a soubor
- GitHub Pages — bezplatný hosting statických stránek s automatickým HTTPS (existují šablony pro MTA-STS)
- Cloudflare Workers — serverless funkce, která vrací obsah politiky
- Cloud storage (S3, Cloud Storage) — s vlastní doménou a HTTPS
Klíčový požadavek: subdoména mta-sts.firma.cz musí mít platný TLS certifikát a soubor by měl být servírován s Content-Type: text/plain. Ověřte HTTPS konfiguraci vaší subdomény.
MTA-STS vs. DANE
Existuje alternativní přístup k zabezpečení přenosu e-mailů: DANE (DNS-based Authentication of Named Entities, RFC 7672). DANE využívá DNSSEC k publikování informací o TLS certifikátech přímo v DNS záznamech (TLSA záznamy).
| Vlastnost | MTA-STS | DANE |
|---|---|---|
| Závislost na DNSSEC | Ne | Ano (vyžaduje DNSSEC v celém řetězci) |
| Distribuce politiky | HTTPS (webový server) | DNS (TLSA záznamy) |
| Podpora u velkých providerů | Google, Microsoft, Yahoo | Rostoucí (Microsoft od 2022, evropští provideři) |
| Složitost nasazení | Střední (DNS + HTTPS) | Vyšší (vyžaduje DNSSEC) |
V praxi se MTA-STS nasazuje výrazně častěji, protože nevyžaduje DNSSEC — technologii, kterou mnoho domén dosud nemá aktivní. Google a Microsoft MTA-STS plně podporují na straně odesílatele i příjemce.
Kdo MTA-STS podporuje
Na straně příjemce (vaše doména)
MTA-STS můžete nasadit na jakékoli doméně — stačí DNS záznam a HTTPS soubor. Funguje nezávisle na tom, jaký mailový server používáte.
Na straně odesílatele (kdo respektuje vaši politiku)
MTA-STS politiku při odesílání respektují:
- Google (Gmail, Google Workspace) — plná podpora
- Microsoft (Outlook.com, Exchange Online) — plná podpora od roku 2022
- Yahoo — podpora (rozsah není plně zdokumentován)
- Postfix 3.4+ — podpora přes externí daemon (postfix-mta-sts-resolver) využívající socketmap rozhraní
Pokud odesílající server MTA-STS nepodporuje, vaši politiku jednoduše ignoruje a doručí e-mail standardním způsobem. MTA-STS nasazení tedy nemůže způsobit ztrátu e-mailů od serverů bez podpory — za předpokladu, že vaše MX servery TLS podporují.
Praktické otázky k nasazení MTA-STS
Může MTA-STS způsobit nedoručení e-mailů
V režimu testing ne — e-maily se doručí i při selhání TLS, jen se vygeneruje report. V režimu enforce ano — pokud odesílající server nedokáže navázat ověřené TLS spojení s vaším MX serverem, e-mail nedoručí. Proto je klíčové nasazovat postupně a sledovat TLS-RPT reporty.
Potřebuji MTA-STS, když mám DMARC
Ano. DMARC řeší autentizaci odesílatele (kdo e-mail poslal). MTA-STS řeší šifrování přenosu (jak se e-mail přenáší mezi servery). Jsou to komplementární vrstvy zabezpečení — DMARC chrání před podvržením identity, MTA-STS chrání obsah zprávy před odposlechem.
Jak aktualizovat MTA-STS politiku
- Upravte soubor na
https://mta-sts.firma.cz/.well-known/mta-sts.txt. - Aktualizujte hodnotu
idv DNS TXT záznamu_mta-sts.firma.czna novou unikátní hodnotu.
Odesílající servery si politiku cachují po dobu max_age. Změna id v DNS je signál, že se mají podívat na novou verzi.
MTA-STS a TLS-RPT jako součást zabezpečení domény
MTA-STS a TLS-RPT doplňují trojici SPF, DKIM a DMARC o vrstvu zabezpečení přenosu. Zatímco autentizační protokoly ověřují, kdo e-mail poslal, MTA-STS zajišťuje, že obsah zprávy nikdo nepřečte ani nezmění cestou k příjemci.
Začněte ověřením aktuálního stavu. Zkontrolujte zabezpečení vaší domény a zjistěte, které vrstvy ochrany máte aktivní a kde jsou mezery.