Zum Inhalt springen

Die Verschlüsselung von E-Mails an Sie lässt sich unbemerkt abschalten

Warnung Ganze Domain E-Mail-Zustellung

Allgemeine Anleitung. Öffnen Sie diesen Artikel aus Ihrem PageCheck-Bericht, um ihn mit den Mailservern Ihrer Domain und den genauen Schritten Ihres DNS-Anbieters ausgefüllt zu sehen.

Was es ist

E-Mails zwischen Servern werden meist verschlüsselt, aber nur, wenn beide Seiten sich unterwegs darauf einigen – und ein Angreifer dazwischen kann dieses Angebot entfernen: Die E-Mail wird dann unverschlüsselt zugestellt, und niemand merkt es. MTA-STS ist eine kleine öffentliche Richtlinie, die sendenden Servern sagt, dass Ihre Mailserver Verschlüsselung immer unterstützen, sodass sie nicht ohne sie zustellen dürfen.

Was falsch ist

example.com hat keine MTA-STS-Richtlinie, sodass die Verschlüsselung der an sie gesendeten E-Mails unbemerkt abgeschaltet werden kann. Ihre DMARC-Richtlinie stoppt bereits E-Mails, die in ihrem Namen gefälscht werden; dies ist der nächste Schritt.

So beheben Sie es

Beginnen Sie im Testmodus: Sendende Server melden dann nur Probleme und stellen weiterhin jede Nachricht zu, sodass nichts schiefgehen kann, während Sie die Einrichtung prüfen.

1. Die Richtliniendatei schreiben. Speichern Sie dies als reine Textdatei mit dem Namen mta-sts.txt. Sie muss jeden Mailserver (MX) der Domain aufführen:

mta-sts.txt

version: STSv1
mode: testing
mx: mail.example.com
max_age: 86400

2. Unter einer eigenen Adresse veröffentlichen. Die Datei muss unter https://mta-sts.example.com/.well-known/mta-sts.txt über HTTPS mit einem gültigen Zertifikat und ohne jede Weiterleitung erreichbar sein – eine Weiterleitung auf www oder auf die Hauptwebsite führt dazu, dass Absender sie ignorieren.

Liegt Ihr DNS bei Cloudflare, ist ein Cloudflare Worker (kostenlos) der einfachste Ort: Workers & Pages → Create → Create Worker, nennen Sie ihn mta-sts, ersetzen Sie seinen Code durch den Code unten und klicken Sie auf Deploy. Dann in den Settings des Workers → Domains & Routes → Add → Custom domain: mta-sts.example.com. Cloudflare legt den DNS-Eintrag und das Zertifikat dafür an.

Cloudflare Worker

export default {
  async fetch() {
    const policy = [
      'version: STSv1',
      'mode: testing',
      'mx: mail.example.com',
      'max_age: 86400',
    ].join('\r\n') + '\r\n';
    return new Response(policy, { headers: { 'content-type': 'text/plain; charset=utf-8' } });
  },
};

Bei Ihrem Webhoster: legen Sie die Subdomain mta-sts.example.com mit einem SSL-Zertifikat an, erstellen Sie darin einen Ordner namens .well-known und laden Sie mta-sts.txt dorthin hoch.

  • Plesk: Websites & Domains → Add Subdomain, dann SSL/TLS Certificates → Let's Encrypt, dann File Manager.
  • cPanel: Domains → Create A New Domain, dann SSL/TLS Status → Run AutoSSL, dann File Manager.

3. Die Richtlinie im DNS ankündigen.

  • Öffnen Sie die DNS-Einträge Ihrer Domain dort, wo ihr DNS verwaltet wird: meist beim Domain-Registrar, beim Webhoster oder bei Cloudflare.
  • Fügen Sie einen TXT-Eintrag mit dem Namen _mta-sts und dem Wert v=STSv1; id=1 hinzu und speichern Sie.

4. Berichte anfordern. Sendende Server schicken dann täglich per E-Mail einen Bericht über jede fehlgeschlagene verschlüsselte Zustellung. Legen Sie zuerst das Postfach tls-reports@example.com an (oder verwenden Sie eine andere Adresse, die Sie lesen).

  • Öffnen Sie die DNS-Einträge Ihrer Domain dort, wo ihr DNS verwaltet wird: meist beim Domain-Registrar, beim Webhoster oder bei Cloudflare.
  • Fügen Sie einen TXT-Eintrag mit dem Namen _smtp._tls und dem Wert v=TLSRPTv1; rua=mailto:tls-reports@example.com hinzu und speichern Sie.

5. Prüfen. Öffnen Sie https://mta-sts.example.com/.well-known/mta-sts.txt: Die Datei sollte als reiner Text erscheinen. Führen Sie dann diese Prüfung erneut aus: Sie liest die Datei und vergleicht ihre mx-Zeilen mit Ihren Mailservern.

6. Etwa zwei Wochen später: durchsetzen. Wenn die Berichte keine fehlgeschlagenen Zustellungen zeigen, stellen Sie die Datei auf den Modus enforce und ein max_age von einer Woche um:

mta-sts.txt

version: STSv1
mode: enforce
mx: mail.example.com
max_age: 604800

Ändern Sie dann den TXT-Eintrag _mta-sts auf v=STSv1; id=2, damit Absender die neue Datei abrufen. Jede spätere Änderung der Datei braucht eine neue id, und wenn sich Ihre Mailserver ändern, passen Sie zuerst die mx-Zeilen an.

Set up MTA-STS (RFC 8461) for the mail domain example.com, starting in testing mode, and TLS-RPT (RFC 8460) reporting.
Its MX hosts (look them up first; this is a placeholder): mail.example.com.

Steps:
1. Serve this policy at https://mta-sts.example.com/.well-known/mta-sts.txt over HTTPS with a valid certificate for mta-sts.example.com, status 200, Content-Type text/plain, no redirect:
   version: STSv1
   mode: testing
   mx: mail.example.com
   max_age: 86400
   Use the web host (a subdomain with its own certificate) or a static host.
2. Add the TXT record _mta-sts.example.com = "v=STSv1; id=1".
3. Add the TXT record _smtp._tls.example.com = "v=TLSRPTv1; rua=mailto:tls-reports@example.com" (make sure that mailbox exists).
4. Verify: curl -sv https://mta-sts.example.com/.well-known/mta-sts.txt (200, no redirect, the policy text) and dig TXT _mta-sts.example.com +short.
5. Tell me to come back in two weeks: if the TLS reports show no failures, switch to mode: enforce with max_age: 604800 and change the TXT record to "v=STSv1; id=2".
Every mx line must match an MX host exactly or by a one-label wildcard (*.example.com); a missing one makes enforcing senders refuse mail.

Resources:
- MTA-STS, RFC 8461 (IETF): https://datatracker.ietf.org/doc/html/rfc8461
- TLS-RPT, RFC 8460 (IETF): https://datatracker.ietf.org/doc/html/rfc8460

Prüfen Sie Ihre Website, um zu sehen, ob sie dieses Problem hat. Website prüfen