Run a full scan — every category, one report
MTA-STS Checker
Verify Mail Transfer Agent Strict Transport Security (MTA-STS) to ensure emails are always delivered over encrypted, mutually authenticated connections.
Beta Feature
MTA-STS enforces TLS encryption for incoming SMTP connections. Policy mode enforcement testing and MX validation are planned for the next update.
Our MTA-STS Checker retrieves both halves of an MTA-STS deployment — the DNS TXT record at _mta-sts.yourdomain.com and the policy file served at mta-sts.yourdomain.com — and reports the enforcement mode, the authorised MX hosts and the policy lifetime.
What is MTA-STS?
MTA-STS (SMTP MTA Strict Transport Security) tells other mail servers that your domain requires TLS encryption for inbound mail, and which MX hosts are legitimate. It is defined in RFC 8461.
SMTP encryption normally uses opportunistic STARTTLS, which has a fundamental weakness: an attacker positioned on the network can simply strip the STARTTLS advertisement from the connection, and the sending server silently falls back to plaintext. There is no way for the sender to know it should have been encrypted.
MTA-STS closes that gap. A sending server fetches your policy over HTTPS, caches it, and from then on refuses to deliver mail unless the connection is encrypted and the receiving certificate matches a host named in your policy.
SMTP encryption normally uses opportunistic STARTTLS, which has a fundamental weakness: an attacker positioned on the network can simply strip the STARTTLS advertisement from the connection, and the sending server silently falls back to plaintext. There is no way for the sender to know it should have been encrypted.
MTA-STS closes that gap. A sending server fetches your policy over HTTPS, caches it, and from then on refuses to deliver mail unless the connection is encrypted and the receiving certificate matches a host named in your policy.
- Declares that inbound mail to your domain must use TLS
- Prevents STARTTLS downgrade and man-in-the-middle attacks
- Requires a DNS TXT record and an HTTPS-hosted policy file together
- Policy is fetched over HTTPS, which is what makes it tamper-resistant
- Supported by Google, Microsoft, Yahoo and other major providers
Why MTA-STS Matters
Without MTA-STS, an attacker who can intercept traffic between a sending server and yours can strip the encryption negotiation and read every message in plaintext. Neither side receives any warning, because opportunistic TLS is designed to degrade silently rather than fail.
The same attack also enables MX redirection: forge a DNS response, point mail at a server you control, and inbound mail is delivered to the attacker. MTA-STS blocks this too, because the cached policy names exactly which MX hosts are valid and the certificate must match one of them.
The same attack also enables MX redirection: forge a DNS response, point mail at a server you control, and inbound mail is delivered to the attacker. MTA-STS blocks this too, because the cached policy names exactly which MX hosts are valid and the certificate must match one of them.
- Blocks STARTTLS stripping, where encryption is silently removed in transit
- Prevents delivery to forged MX hosts through DNS spoofing
- Guarantees inbound mail is encrypted rather than merely eligible for encryption
- Increasingly expected in security questionnaires and compliance frameworks
- Pairs with TLS-RPT to provide visibility into failures
How This MTA-STS Checker Works
The tool checks both required components — the DNS record and the HTTPS policy file — and reports on each.
- Validates the domain input against format and SSRF safety checks
- Queries DNS for a TXT record at _mta-sts.yourdomain.com
- Fetches the policy file from https://mta-sts.yourdomain.com/.well-known/mta-sts.txt
- Parses the mode, max_age and every mx line in the policy
- Reports whether the policy is in enforce, testing or none mode
How to Use the MTA-STS Checker
- Enter your domain name in the input field
- Run the check to retrieve both the DNS record and the policy file
- Confirm the DNS record is present with a valid id value
- Confirm the policy file is reachable over HTTPS
- Check the mode — enforce is the goal, testing is a safe intermediate step
Understanding Your MTA-STS Results
MTA-STS has two parts. Here is what each field means:
| Field / Value | Meaning |
|---|---|
DNS record |
The TXT record at _mta-sts.yourdomain.com, containing v=STSv1 and an id value. Sending servers watch the id and refetch the policy whenever it changes. |
mode: enforce |
Full protection. Sending servers refuse to deliver unless TLS succeeds and the certificate matches a listed MX host. |
mode: testing |
Failures are reported through TLS-RPT but mail is still delivered. The correct starting point for a new deployment. |
mode: none |
Effectively disables the policy. Used to withdraw MTA-STS cleanly, since simply deleting the record leaves cached policies in force. |
max_age |
How long, in seconds, sending servers cache the policy. Start low at around 86400 (one day) and increase to 604800 (one week) or more once stable. |
mx |
Each authorised mail host. Wildcards such as *.example.com are permitted. Every MX host in your DNS must be listed, or mail from enforcing senders will fail. |
Common Problems & How to Fix Them
Best Practices
- Start in testing mode and only move to enforce once TLS-RPT reports are clean
- Set up TLS-RPT before MTA-STS so you have visibility from the first day
- List every MX host, or use a wildcard covering your provider hosts
- Update the DNS id value on every policy change
- Begin with max_age of 86400 and increase once the deployment is proven
- Monitor the policy URL for availability, since an outage weakens protection as caches expire
- Use mode: none rather than deleting records if you need to withdraw MTA-STS
Security Recommendations
- Do not stop at testing mode — it reports failures but provides no actual protection
- Keep the certificate on the mta-sts subdomain valid and monitored, as an expiry silently disables policy fetching
- Verify your MX hostnames and certificates align before enabling enforce, since a mismatch blocks legitimate mail
- Pair MTA-STS with TLS-RPT so downgrade attempts become visible rather than silent
- Consider DANE alongside MTA-STS if your DNS is DNSSEC-signed, as the two are complementary
- Review the policy after any mail provider migration, since a stale MX list will reject your own new servers