← All posts

Mutual TLS (mTLS): Wenn beide Seiten ihre Identität nachweisen

HTTPS prüft nur den Server, mTLS prüft beide Seiten. Wie gegenseitige Authentifizierung funktioniert, welche Zertifikatskette dahintersteht, wovor sie schützt und worauf es bei der Einführung ankommt.

Passkontrolle am Grenzübergang: beide Seiten prüfen die Identität – Sinnbild für gegenseitige Authentifizierung mit Mutual TLS (mTLS)
Note: This article is currently available in German only. An English translation is on its way. Open the German original.

Wer eine Website über HTTPS aufruft, prüft dabei, ohne es zu merken, die Identität des Servers: Der Browser verifiziert dessen TLS-Zertifikat. Die Gegenrichtung bleibt offen. Der Server weiß zunächst nicht, wer sich da verbindet. Für den öffentlichen Webauftritt ist das in Ordnung. Für APIs, Maschinenkommunikation und Zero-Trust-Architekturen reicht es nicht.

Gegenseitige Authentifizierung schließt genau diese Lücke: Beide Seiten einer Verbindung weisen ihre Identität nach, bevor Daten fließen. Die verbreitetste Umsetzung ist Mutual TLS (mTLS). Dieser Beitrag erklärt, wie das Verfahren funktioniert, welche Zertifikatsinfrastruktur dahintersteht, wovor es schützt und worauf es bei der Einführung ankommt.

Was ist gegenseitige Authentifizierung?

Von gegenseitiger Authentifizierung (auch Zwei-Wege-Authentifizierung) spricht man, wenn beide Seiten eines Kommunikationskanals die Identität der jeweils anderen verifizieren, statt dass nur eine Seite prüft. Ein Alltagsbild: Bei einer bestellten Fahrt prüft der Fahrgast Kennzeichen und Fahrzeug, bevor er einsteigt, und die Person am Steuer fragt nach dem Namen, bevor es losgeht. Beide vergewissern sich, mit dem richtigen Gegenüber zu tun zu haben.

Digital funktioniert das genauso: Client und Server verifizieren einander unabhängig, statt dass nur der Client dem Server vertraut. Auch Verbindungen zwischen Geräten, etwa im Internet of Things (IoT), nutzen häufig gegenseitige Authentifizierung. Am bekanntesten ist das Verfahren im Zusammenhang mit dem Protokoll Transport Layer Security (TLS), es existiert aber auch in anderen Protokollen und Kontexten.

Drei Wege zur gegenseitigen Authentifizierung

In der Praxis haben sich drei Methoden etabliert:

  • Public-Key-Authentifizierung: Beide Seiten besitzen ein Schlüsselpaar aus öffentlichem und privatem Schlüssel. Jede Seite beweist per digitaler Signatur, dass sie den privaten Schlüssel zu ihrem veröffentlichten öffentlichen Schlüssel besitzt. Lässt sich die Signatur mit dem öffentlichen Schlüssel verifizieren, ist das Gegenüber legitim.
  • Zertifikatsbasierte Authentifizierung: Wie die Public-Key-Methode, nur dass beide Seiten ein Public-Key-Zertifikat besitzen. Das Zertifikat enthält zusätzliche prüfbare Angaben: wer es ausgestellt hat, für wen es gilt und wann es abläuft. TLS-Zertifikate auf beiden Seiten ermöglichen diese Form.
  • Benutzername und Passwort: Trotz des Namens steckt auch hier ein Server-Zertifikat dahinter. Der Client verifiziert zunächst den Server. Auf Client-Seite läuft dann die klassische Anmeldung: Benutzername und Passwort werden an den Server gesendet und dort geprüft.

Was ist Mutual TLS (mTLS)?

Standard-TLS authentifiziert nur eine Richtung: Der Client prüft das Zertifikat des Servers. Mutual TLS erweitert den Handshake um die Gegenrichtung. Auch der Client legt ein Zertifikat vor und beweist den Besitz des zugehörigen privaten Schlüssels. Erst wenn beide Prüfungen erfolgreich sind, kommt die verschlüsselte Verbindung zustande. Damit ist mTLS die am weitesten verbreitete Form der gegenseitigen Authentifizierung und zugleich ein technischer Grundpfeiler moderner Zero-Trust-Modelle.

Wie der mTLS-Handshake abläuft

Vereinfacht ergänzt mTLS den bekannten TLS-Handshake um drei Schritte:

  1. Der Client verbindet sich, der Server präsentiert sein TLS-Zertifikat; der Client prüft es gegen seine vertrauenswürdigen Zertifizierungsstellen (wie bei jedem HTTPS-Aufruf).
  2. Der Server fordert zusätzlich ein Client-Zertifikat an.
  3. Der Client sendet sein Zertifikat und beweist per Signatur den Besitz des privaten Schlüssels.
  4. Der Server prüft das Client-Zertifikat gegen die von ihm akzeptierten Zertifizierungsstellen. Erst dann wird die Verbindung aufgebaut und verschlüsselt fortgesetzt.

Schlägt eine der Prüfungen fehl, kommt keine Verbindung zustande. Unbekannte Clients werden so bereits auf Transportebene abgewiesen, noch bevor eine Anwendung überhaupt Anfragen sieht.

Die Zertifikatskette dahinter: PKI in Kurzform

mTLS setzt eine Public-Key-Infrastruktur (PKI) voraus, und zwar auf beiden Seiten. Typisch ist eine dreistufige Hierarchie, die für Server- wie Client-Zertifikate parallel aufgebaut wird:

  • Root-CA: die oberste Zertifizierungsstelle, deren Schlüssel besonders geschützt und selten benutzt wird.
  • Intermediate-CA: eine Zwischenstelle, die von der Root-CA signiert ist und die eigentlichen Zertifikate ausstellt. So bleibt die Root-CA offline und das Risiko begrenzt.
  • End-Zertifikate: das Server-Zertifikat bzw. die Client-Zertifikate, ausgestellt von der Intermediate-CA, mit begrenzter Laufzeit.

Damit die gegenseitige Prüfung funktioniert, führt jede Seite einen Truststore mit den Zertifizierungsstellen, denen sie vertraut: Der Server akzeptiert nur Client-Zertifikate aus seiner Client-PKI, der Client nur Server aus der Server-Kette. Die privaten Schlüssel verlassen ihre Systeme dabei nie.

Wovor gegenseitige Authentifizierung schützt

  • On-Path-Angriffe: Ein Angreifer, der sich zwischen beide Seiten schaltet und sich jeweils als das Gegenüber ausgibt, scheitert daran, sich bei beiden Enden zu authentifizieren.
  • Spoofing und Impersonation: Sich als vertrauenswürdiger Server oder Nutzer auszugeben wird erheblich schwerer, wenn beide Seiten Identitätsnachweise erbringen müssen.
  • Diebstahl von Zugangsdaten: Basiert die Authentifizierung auf Schlüsseln und Zertifikaten statt auf Passwörtern, gibt es schlicht keine Anmeldedaten, die per Phishing abgegriffen werden könnten; solche Angriffe laufen ins Leere.

Typische Einsatzszenarien

  • APIs: mTLS stellt sicher, dass eine Schnittstelle nur Anfragen legitimer Clients annimmt und dass Clients keine gefälschten Antworten akzeptieren.
  • Microservices und Service-to-Service-Kommunikation: In verteilten Architekturen authentifizieren sich Dienste untereinander über Maschinenidentitäten. Jede interne Verbindung wird einzeln abgesichert, statt dass dem Netz pauschal vertraut wird.
  • IoT: Geräte kommunizieren über das offene Internet mit Servern und untereinander. Gegenseitige Authentifizierung stellt sicher, dass Daten von einer legitimen Quelle stammen.
  • Zero Trust: Wenn grundsätzlich kein Nutzer und kein Gerät als vertrauenswürdig gilt, liefert mTLS den beidseitigen Identitätsnachweis, der dieses Prinzip auf Verbindungsebene durchsetzt.
  • Cloud-native und Enterprise-Umgebungen: Von der Anwendung bis zur Datenbank lassen sich Verbindungen konsequent über Zertifikate absichern, unabhängig davon, wo die Workloads laufen.

Warum nicht jede Verbindung mTLS nutzt

So wirksam gegenseitige Authentifizierung ist, sie hat ihren Preis. Der Austausch kostet etwas mehr Zeit und Rechenleistung, vor allem aber braucht es Vorbereitung auf beiden Seiten: Jede Partei benötigt Schlüsselpaare oder Zertifikate. Für den durchschnittlichen Website-Besuch ist das unpraktisch. Deshalb bleibt gewöhnliches HTTPS einseitig. Die eigentlichen Herausforderungen liegen im Betrieb:

  • Zertifikatsmanagement: Ausstellen, Verteilen und Erneuern vieler Client-Zertifikate will organisiert sein; manuell wird das schnell fehleranfällig.
  • Rotation: Abgelaufene oder kompromittierte Zertifikate müssen zuverlässig ersetzt und zurückgezogen werden, ohne Ausfälle zu verursachen.
  • Komplexität verteilter Systeme: Je mehr Dienste, Umgebungen und Teams beteiligt sind, desto wichtiger werden Automatisierung und ein sauberes Inventar aller Identitäten.

Worauf es bei der Einführung ankommt

Aus der Praxis lassen sich einige Leitplanken ableiten:

  • Eigene CA-Hierarchie sauber aufbauen: getrennte Ketten für Server- und Client-Zertifikate, Root-CA offline halten, Intermediate-CAs für die Ausstellung nutzen.
  • Kurze Laufzeiten und automatisierte Erneuerung: je kürzer ein Zertifikat gilt, desto kleiner das Zeitfenster für Missbrauch. Rotation gehört automatisiert, nicht in den Kalender.
  • Truststores gezielt pflegen: Der Server sollte ausschließlich der eigenen Client-CA vertrauen, nicht pauschal allen öffentlichen Zertifizierungsstellen.
  • Durchsetzung serverseitig verankern: Die Anforderung des Client-Zertifikats muss am Endpunkt verpflichtend sein, sonst bleibt mTLS Theorie.
  • Sichtbarkeit schaffen: ein Inventar aller ausgegebenen Zertifikate und Alarme vor Abläufen verhindern böse Überraschungen.

mTLS in Zero Trust und SASE/SSE

Gegenseitige Authentifizierung ist kein Nischenwerkzeug, sondern Kernbestandteil moderner Sicherheitsplattformen. Neben TLS unterstützt etwa auch das Secure-Shell-Protokoll (SSH) gegenseitige Authentifizierung per Schlüssel oder Zertifikat. In Zero-Trust- und SASE/SSE-Plattformen wird mTLS genutzt, um Nutzer, Geräte und Dienste kryptografisch zu verifizieren. Cloudflare etwa setzt mTLS in seiner Zero-Trust-Plattform für die Verifizierung von Nutzern und Geräten ein und unterstützt es in API Shield für die Absicherung von Schnittstellen.

Wie SASE/SSE Netzwerk und Sicherheit zu einem Cloud-Dienst bündelt, erklärt unser Beitrag Was ist SASE/SSE? .

Und warum Zugriffsentscheidungen generell an der Identität ansetzen sollten, zeigt der Beitrag Warum Identität der Motor von Zero Trust ist .

mTLS mit KAEMI

Ob API-Absicherung, Service-to-Service-Verschlüsselung oder Zero-Trust-Zugriff: Als Managed Service Provider planen, implementieren und betreiben wir bei KAEMI gegenseitige Authentifizierung als Teil einer SASE/SSE-Architektur , inklusive Zertifikatsmanagement und laufendem Betrieb. Bei der Einführung unterstützen unsere Professional Services , von der PKI-Planung bis zur Durchsetzung am Endpunkt.

Grundlage dieses Beitrags sind der Lernartikel von Cloudflare („Was bedeutet gegenseitige Authentifizierung?“) sowie ein technischer Fachbeitrag zu End-to-End-Security mit Mutual TLS in modernen Webanwendungen (Medium).

Questions about this topic?

Let's talk about your network and security goals, no strings attached.

Get in touch