Was ist SSL/TLS?
SSL steht für "Secure Sockets Layer", TLS für "Transport Layer Security". Streng genommen ist SSL die alte, längst veraltete Version (SSL 2.0, SSL 3.0 — beide unsicher), und TLS der Nachfolger (TLS 1.2, TLS 1.3). Im Sprachgebrauch sagt fast jeder "SSL", auch wenn technisch TLS gemeint ist. Wenn du heute ein "SSL-Zertifikat" kaufst, bekommst du ein TLS-Zertifikat. Die Begriffe sind in der Praxis austauschbar.
Die Kernidee ist einfach: Bevor Browser und Server irgendwelche echten Daten austauschen, einigen sie sich auf einen geheimen Schlüssel. Mit diesem Schlüssel werden alle nachfolgenden Daten verschlüsselt. Selbst wenn jemand auf der Leitung mitschneidet, sieht er nur unlesbaren Datenmüll. Diese Verschlüsselung ist die Grundlage von HTTPS, von Online-Banking, von E-Commerce, von praktisch jeder vertraulichen Kommunikation im Web.
Vergleich aus dem Alltag: Du willst deinem Anwalt einen vertraulichen Brief schicken. Statt eine offene Postkarte zu nutzen (HTTP), packst du den Brief in einen Tresor, den nur ihr beide öffnen könnt (HTTPS mit TLS). Selbst wenn der Postbote den Tresor klaut, kommt er nicht an den Inhalt.
Was ist ein SSL-Zertifikat?
Ein SSL-Zertifikat ist eine kleine Datei, die auf deinem Server liegt und drei Dinge bestätigt:
- Identität. "Ich bin wirklich der Server hinter
firmencharisma.de." - Schlüssel. "Hier ist mein öffentlicher Schlüssel, mit dem du verschlüsseln kannst."
- Vertrauen. "Eine Zertifizierungsstelle hat das geprüft und bestätigt."
Die Zertifizierungsstelle (Certificate Authority, CA) ist ein vertrauenswürdiger Dritter — z.B. Let's Encrypt, DigiCert, Sectigo. Browser haben eine Liste vertrauenswürdiger CAs eingebaut. Wenn ein Server mit einem Zertifikat antwortet, das von einer dieser CAs ausgestellt wurde, akzeptiert der Browser die Verbindung. Andernfalls erscheint die berüchtigte Warnung "Diese Verbindung ist nicht sicher".
| Zertifikatstyp | Was geprüft wird | Wofür |
|---|---|---|
| DV (Domain Validation) | Nur Domain-Besitz | Standard-Websites, Blogs, KMU |
| OV (Organization Validation) | Domain + Unternehmen | Größere Unternehmen, B2B-Websites |
| EV (Extended Validation) | Tiefe Prüfung des Unternehmens | Banken, Versicherungen, hochsensible Daten |
Für 95 Prozent aller Websites reicht ein DV-Zertifikat von Let's Encrypt — kostenlos, automatisch erneuerbar, technisch identisch zu teuren Varianten. EV-Zertifikate haben in modernen Browsern keinen sichtbaren Vorteil mehr (die früher übliche grüne Adressleiste wurde abgeschafft).
Zusätzlich gibt es Wildcard-Zertifikate. Statt für jede Subdomain ein eigenes Zertifikat auszustellen (shop.example.de, blog.example.de, api.example.de), deckt ein Wildcard-Zertifikat auf *.example.de beliebig viele Subdomains auf einmal ab. Das spart Pflegeaufwand, wenn du viele Sub-Bereiche betreibst. Und SNI (Server Name Indication) ist die Technik, die es erlaubt, auf einer einzigen IP-Adresse hunderte Websites mit eigenen Zertifikaten zu betreiben — der Browser sagt beim Handshake, für welchen Hostnamen er das Zertifikat braucht, und der Server liefert das passende. Vor SNI brauchte jede HTTPS-Website eine eigene IP — heute undenkbar.
Wie funktioniert der TLS-Handshake?
Der Aufbau einer TLS-Verbindung — der "Handshake" — ist eine kleine Choreographie, die in unter 100 Millisekunden abläuft:
- Client Hello. Browser sagt: "Ich will verschlüsselt reden, hier sind die TLS-Versionen und Verschlüsselungs-Algorithmen, die ich kann."
- Server Hello. Server antwortet: "Okay, lass uns TLS 1.3 mit AES-256-GCM nehmen. Hier ist mein Zertifikat."
- Zertifikatsprüfung. Browser prüft, ob das Zertifikat gültig ist und von einer vertrauenswürdigen CA stammt.
- Schlüsselaustausch. Browser und Server einigen sich auf einen gemeinsamen Sitzungsschlüssel — meistens per Diffie-Hellman, ohne dass der Schlüssel selbst je übertragen wird.
- Verschlüsselte Verbindung steht. Ab jetzt geht jede HTTP-Anfrage durch den verschlüsselten Tunnel.
TLS 1.3 hat den Handshake gegenüber älteren Versionen massiv beschleunigt — von zwei Round-Trips auf einen. Auf einer schnellen Verbindung merkt man den Unterschied kaum, auf einer schlechten Mobilverbindung sind es spürbare 100-300 ms Ladezeit.
Let's Encrypt — kostenloses SSL für alle
Bis 2015 musstest du SSL-Zertifikate kaufen — pro Jahr zwischen 50 und mehreren hundert Euro. Let's Encrypt hat das Spiel kaputt gemacht: kostenlose Zertifikate, automatische Ausstellung, Erneuerung alle 90 Tage per Skript. Heute liefert Let's Encrypt die Zertifikate für hunderte Millionen Websites weltweit.
Der Trick: Die Validierung läuft komplett automatisch über den ACME-Standard. Dein Server beweist, dass er die Domain kontrolliert (entweder per Datei-Upload oder per DNS-Eintrag), und bekommt das Zertifikat sofort ausgestellt. Die Erneuerung passiert ohne menschliches Zutun. Jeder seriöse Hosting-Anbieter integriert Let's Encrypt heute kostenlos im Tarif.
Häufige Fehler beim Umgang mit SSL
Zertifikat abgelaufen. Klassiker. Wenn die Erneuerung schiefgeht und niemand merkt es, zeigt der Browser plötzlich eine Warnung an. Besucher springen sofort ab. Lösung: Monitoring oder vollautomatische Erneuerung.
Mixed Content. Die Seite läuft per HTTPS, aber lädt Bilder oder Skripte über HTTP. Browser blockiert das, Funktionen brechen. Alle Asset-URLs müssen https:// oder protokollrelativ sein.
Unvollständige Zertifikatskette. Manche Server liefern nur das Zertifikat, nicht die Zwischenzertifikate. Browser akzeptieren das oft, mobile Apps und ältere Geräte nicht. Test mit SSL Labs.
Veraltete TLS-Versionen aktiv. Wer noch TLS 1.0 oder 1.1 anbietet, hat eine Sicherheitslücke. Aktuell sollten nur TLS 1.2 und 1.3 erlaubt sein.
Selbstsignierte Zertifikate im Live-Betrieb. Funktioniert technisch, aber jeder Browser warnt. Im Produktivbetrieb unbrauchbar.