MTA-STS: waarom STARTTLS niet genoeg is
STARTTLS heeft e-mailcommunicatie veiliger gemaakt door versleuteling mogelijk te maken, maar het heeft een fundamentele zwakte: het is opportunistisch. Een verzendende server probeert STARTTLS, maar als het niet lukt (of als een man-in-the-middle het STARTTLS-commando verwijdert), valt de verbinding terug op onversleutelde tekst. MTA-STS (SMTP MTA Strict Transport Security, RFC 8461) lost dit probleem op door het ontvangende domein in staat te stellen een beleid te publiceren dat TLS verplicht: als de verzendende server geen TLS-verbinding tot stand kan brengen, moet deze het bericht NIET onversleuteld verzenden, maar in de wachtrij houden en het later opnieuw proberen.
MTA-STS werkt via een combinatie van een DNS TXT-record (dat de aanwezigheid van het beleid aankondigt) en een HTTPS-beleidspagina (die de specifieke details bevat). Dit dubbele mechanisme maakt het bestand tegen DNS-spoofing: zelfs als een aanvaller het DNS-record zou compromitteren, zou hij niet in staat zijn een geldig HTTPS-certificaat voor het domein te presenteren. Het resultaat is een aanzienlijk hogere e-mailtransportbeveiliging dan alleen STARTTLS.
MTA-STS configureren: DNS + HTTPS
De configuratie vereist twee componenten: 1) Een DNS TXT-record op _mta-sts.jouwdomein.com met de versie en een uniek ID (doorgaans een datum). Het ID moet worden bijgewerkt bij elke beleidswijziging. 2) Een beleidspagina gehost op https://mta-sts.jouwdomein.com/.well-known/mta-sts.txt (let op het HTTPS en het specifieke subdomein). De pagina moet de versie, de modus, de geautoriseerde MX's en de maximale geldigheid (max_age) bevatten.
MTA-STS-modi: testing vs enforce
MTA-STS biedt drie modi: none (uitgeschakeld), testing (monitoring zonder blokkering) en enforce (actieve handhaving). Net als bij DMARC is de aanbevolen aanpak geleidelijk: begin met mode: testing om te verifiëren dat alle legitieme e-mails correct aankomen via TLS. In testingmodus sturen verzendende servers TLS-RPT-rapporten bij problemen, maar leveren ze e-mail ook onversleuteld af als TLS faalt. Zodra je hebt bevestigd dat alles werkt, schakel je over naar mode: enforce.
De parameter max_age bepaalt hoelang (in seconden) verzendende servers het beleid in cache houden. Een hoge waarde (86400 = 24 uur) vermindert het aantal DNS-queries, maar vertraagt de propagatie van wijzigingen. Tijdens de eerste configuratie is het raadzaam een korte max_age te gebruiken (bijv. 300 = 5 minuten) om snel te kunnen corrigeren bij problemen. Na stabilisatie kun je verhogen naar 86400 of meer.
MTA-STS verifiëren en monitoren
Gebruik onze MTA-STS Lookup om te verifiëren dat zowel het DNS-record als de HTTPS-beleidspagina correct zijn geconfigureerd. De tool controleert: aanwezigheid en syntaxis van het TXT-record, bereikbaarheid van het HTTPS-subdomein, geldigheid van het TLS-certificaat op het subdomein, syntaxis en inhoud van de beleidspagina, en consistentie tussen de MX's die in het beleid zijn gedeclareerd en de werkelijke MX-records van het domein.
Voor complete monitoring, combineer MTA-STS met TLS-RPT Lookup: TLS-RPT stuurt je rapporten wanneer verzendende servers TLS-problemen ondervinden met jouw domein. Zo weet je of en wanneer TLS-verbindingen mislukken. Controleer ook regelmatig het TLS-certificaat van je mailserver met SSL Check: een verlopen certificaat met actief MTA-STS in enforce-modus blokkeert alle inkomende e-mails, omdat verzendende servers weigeren om onversleuteld af te leveren.