SSL-Zertifikate

Grundwissen über Server Zertifikate

Seitdem Google und auch der Gesetzgeber das Vorhandensein eines SSL-Zertifikates für eine WebSite verlangen, haben wohl die meisten WebSites irgendein SSL-Zertifikat. Aber ist damit alles auch erledigt? Ja, denken die meisten. Doch die richtige Antwort lautet: Nein. Warum das so ist, wollen wir uns einmal etwas genauer ansehen. Kommen Sie also mit auf die Tour der „Nebensächlichkeiten“. Dabei erfahren Sie, was für Sie noch alles auf der „To-Do-Liste“ steht.

Was ist ein Server-/SSL-Zertifikat?

Informationen über erlaubte Hosts, CAs und GültigkeitEin SSL-Zertifikat beinhaltet Informationen zu einer Domain, einem Host oder einer Firma/Organisation. Das Zertifikat bestätigt unter anderem, welchen Host (z.B. www.bb-one.net) man gerade mit dem Browser besucht. Oder mit welchem Host der eMail-Client gerade kommuniziert und Mails abholt und/oder versendet.

Zertifikat - originale TextdateiEin SSL-Zertifikat besteht technisch gesehen aus einem codierten Text. Dieser wird bei der Kommunikation zwischen einem Server (Web-Server, Mail-Server) und einem Client (Web-Browser, Mail-Client) abgefragt und übertragen. Zeitgleich werden mit dem Zertifikat auch Informationen zur Gültigkeit und zum Ausgeber des Zertifikates übermittelt.

Es gibt verschiedene Klassen von SSL-Zertifikaten. Sie unterscheiden sich in der Aussagekraft des Zertifikats. Demnach bestätigen die einfachsten Zertifikate lediglich eine Domain bzw. einen Host (bb-one.net, ist laut Definition auch für www.bb-one.net gültig). Andere hingegen bestätigen die dahinter stehende Organisation (BB-ONE.net GmbH). Und wieder andere bestätigen beliebige Hosts unterhalb einer Domain (*.bb-one.net). Somit haben wir im wesentlichen also drei Zertifikatsklassen.

Wie beantragt man ein Zertifikat?

Natürlich könnten Sie sich rein theoretisch ein Zertifikat auch selbst erzeugen. Technisch gesehen kann das genauso gut sein wie ein Zertifikat, welches eine sogenannte Certificate Authority (CA) ausgestellt hat. Allerdings haben selbst erzeugte Zertifikat große Akzeptanzprobleme, weil Ihnen als Aussteller niemand eine bescheinigte Glaubwürdigkeit abnimmt. Deshalb ist mit einer Ablehnung von Web-Browsern und Mail-Cients fest auszugehen.

Zu einem aussagefähigen SSL-Zertifikat, ausgestellt von einer CA, kommen Sie mit den folgenden Arbeitsschritten:

  1. Auf dem Server wird ein Schlüsselpaar erzeugt: ein privater und ein öffentlicher Schlüssel
  2. Daraufhin wird eine Anforderungsdatei erzeugt und mit dem öffentlichen Schlüssel unterschrieben.
  3. Die beauftragte CA übernimmt diese Anforderungsdatei und überprüft, ob sie für die Domain ein Zertifikat erzeugen darf (siehe weiter unten). Dazu gehört auch, ob ein entsprechend codierter DNS-Eintrag vorliegt. Diesen muss der DNS-Verwalter umzusetzen, also Ihr Domain-Provider oder Hoster.
  4. Nachdem die CA das Vorhandensein des DNS-Eintrags überprüft hat, wird das Zertifikat erzeugt und dem Antragsteller übergeben.

Wer ist eine ‚Certificate Authority‘?

Eine Certificate Authority ist eine Firma oder eine Organisation, die ihrerseits eine erstklassige, von Dritten bestätigte Reputation haben sollte. Darüber hinaus muss diese Organisation die Technik, mit der sie Zertifikate ausstellt, nach bestimmten Vorgaben betreiben. Der damit verbundene Aufwand ist erheblich.

Die CA kontrolliert nämlich, ob der Beantragende berechtigt ist, ein Zertifikat für die jeweilige Domain oder den Host zu beantragen. Hierbei gibt es verschiedene Methoden, die sich im Aufwand deutlich unterscheiden. Eine Methode verlangt zum Beispiel vom Antragsteller, dass er einen bestimmten Eintrag in der Zonendatei bzw. im zuständigen Nameserver vornehmen oder dies veranlassen kann. Dabei geht die CA davon aus, dass Nameserver-Betreiber und Domainverwalter identisch sind. Diese Annahme setzt wiederum voraus, dass zwischen dem Domain-Verwalter, der hier identisch mit dem Zertifikats-Beantragenden ist, und dem Domain-Eigentümer eine entsprechende Vereinbarung besteht. Gemeint ist damit die sogenannte AV-Vereinbarung, also der Vertrag zur Auftragsverarbeitung im Sinne der DSGVO.

Eine andere Methode verlangt, dass die CA direkt auf dem jeweiligen Server schreiben darf. Das Verfahren wird lediglich von einer CA angewendet und ist sicherlich nicht nach jedermanns Geschmack. Oftmals verlangen die CAs bei Zertifikaten, für eine Organisationen oder Firmen die Vorlage von Dokumenten zum Identitätsnachweis. Dazu gehören zum Beispiel Handelsregister-Auszüge, die zu hinterlegen sind.

Zertifikat und DNS – wie gehört das zusammen?

Die Domain-Verwaltung bzw. die DNS-Verwaltung und SSL-Zertifikate haben einiges miteinander zu tun. Wir führten bereits aus, dass die Berechtigung zum Beantragen eines Class1-Zertifikates meist über einen codierten Eintrag im DNS überprüft wird. Umgekehrt wird aber auch festgelegt, WER oder genauer gesagt welche CA ein Zertifikat für die jeweilige Domain ausstellen darf.

Warum stehen die CAs unter strenger Beobachtung?

Dieses Verfahren führte man ein, nachdem die damalige CA Symantec, eigentlich bekannt für ihren Virenscanner, mehrfach dabei ertappt wurde, Zertifikate ohne jegliche Berechtigung ausgestellt zu haben. Dummer Weise übrigens sogar für Google. Daraufhin startete Google einen regelrechten Krieg gegen Symantec. Danach mochte niemand mehr Symantec so recht vertrauen. Das galt natürlich dann auch für die von Symantec ausgestellten Zertifikate. Allen Resellern des Anbieters entzog man kollektiv ebenfalls das Vertrauen. Deshalb führte man also ein Verfahren ein, mit dessen Hilfe jeder öffentlich prüfen kann, wer für die jeweilige Domain ein Zertifikat ausstellen darf.

Das schreibt Wikipedia dazu:

DNS Certification Authority Authorization (CAA) verwendet das Domain Name System, um dem Besitzer einer Domain die Möglichkeit zu bieten, gewisse Zertifizierungsstellen (CAs) dazu zu berechtigen, ein Zertifikat für die betroffene Domain auszustellen. CAA Records sollen verhindern, dass Zertifikate fälschlicherweise für eine Domain ausgestellt werden.

Dazu werden bestimmte Einträge ins DNS geschrieben. Das sieht dann beispielsweise so aus:

bb-one.net. IN CAA 0 issue "sectigo.com"

Sectigo ist der neue Markenname für Comodo, eine der größten CAs. Jeder anderen CA ist es also verboten, ein Zertifikat für diese Domain auszustellen. Zusätzlich wird gerne festgelegt, wen man bei Verstössen informieren kann:

bb-one.net. IN CAA 0 iodef „mailto:hm@server-hotel-berlin.net“

Wie funktioniert die Zertifikats-Implementierung?

Da das Zertifikat bei der Kommunikation zwischen Server und Clients mit übertragen werden soll, muss es auf dem Server verfügbar sein. Und der Server muss wissen, was er damit zu tun hat. Der Server muss dazu einige Software-Bibliotheken installiert haben. Dazu gehört z.B. OpenSSL. Der Server wird entsprechend konfiguriert. Hierbei sollte man zwischen maximaler Kompatibilität zu alten Browsern bzw. Betriebs-Systemen und maximaler Sicherheit genau abwägen. Das ist kein Hexenwerk, muss jedoch sehr sorgfältig geschehen, da die Fehlerquellen reichhaltig gestreut sind.

Warum sollte man die Implementierung des Zertfikats überprüfen?

Diesen Punkt überspringen alle gerne mal. Leider ist das eine Unterlassungssünde aus Unkenntnis. Denn diese kann zu unerwünschten Nebenwirkungen führen. Zum Beispiel beugt ein qualitativ gut implementiertes Zertifikat diversen Standard Serverattacken wie der sogenannten POODLE Attack vor. Und es sorgt für eine reibungslose Kompatibilität mit den Betriebssystemen und Browsern der Endgeräte beim Anwender.

Auswertung der ZertifikatsüberprüfungTechnische Perfektion bei der Art und Weise der sauberen Verschlüsselung ist also kein Luxus, sondern eine sinnvolle Notwendigkeit. Deshalb erhalten unsere Kunden in jedem Fall eine von neutraler Stelle durchgeführte umfangreiche Kontrolle und anschließende Bewertung des implementierten Zertifikats. Diese unabhängige Instanz kontrolliert die Richtigkeit des Zertifikates genauso gründlich wie die Qualität der Implementierung. Die anschließende Auswertung ist mehrere Seiten lang und wird mit einer „Schulnote“ abgeschlossen. Unser Ziel ist immer ein A+. Lediglich in Sonderfällen muss auch einmal eine B-Note reichen. Das sind dann die Fälle, in denen der Server ein altes Betriebssystem hat und dies nicht aktualisiert werden kann. Aber eine schlechtere Note sollte man niemals akzeptieren.

Was hat es mit der Gültigkeitsdauer auf sich?

Ein SSL-Zertifikat erhält neben anderen Eigenschaften auch eine Gültigkeitsdauer. In der Regel ist es ein Jahr lang gültig. Danach muss der Betreiber das Zertifikat durch ein neues austauschen. Der Prozess der Beantragung ist identisch mit dem der ersten Beantragung. Es gibt also keine Verlängerung, es muss ein neues Zertifikat beantragt werden.

Wie pflegt man ein Zertifikat richtig?

Wir erwähnten bereits, dass auf dem Server unterstützende Software laufen muss. Da es sich hier eigentlich um ein hochgradig sicherheits-relevantes Thema handelt, sollte klar sein, dass man diese Software jederzeit, regelmässig und sehr zeitnah aktualisieren muss.

Bei Software-Aktualisierungen muss man meistens auch die Implementierung anpassen. Dies ist notwendig, um den gewünschten Sicherheits-Level beizubehalten. Anschließend darf natürlich auch die Qualitätskontrolle des gesamten Konstrukts nicht fehlen. Wir erreichen dies, indem wir die oben beschriebene externe Evaluierung wiederholen und für den Kunden dokumentieren.

Was müssen Sie beachten bzw. tun?

  1. Passende SSL-Zertifikate von kommerziellen Certificate Authorities verwenden.
  2. Das Zertifikat korrekt implementieren.
  3. Das Zertifikat und dessen Implementierung evaluieren lassen.
  4. Die Implementierung während der Laufzeit monitoren und aktualisieren.
  5. Das Zertifikat rechtzeitig erneuern

Welchen Nutzen bringen Zertifikate?

Zusammengefasst gibt es mindestens zwei gute Gründe für die Verwendung von SSL-Serverzertifikaten:

  1. Google verlangt zwingend für jede WebSite ein Zertifikat und bestraft ansonsten durch Downranking.
  2. Die DSGVO verlangt die verschlüsselte Übertragung von personenbezogenen Daten, z.B. bei einem Mail-Formular. Für die dafür eingesetzte Verschlüsselungsoftware OpenSSL brauchen wir ein Zertifikat.

Darüber hinaus hat ein gut implementiertes SSL-Zertifikat weitere positive Nebenwirkungen:

  • Es vermeidet nervige Popups, Warnhinweise und sogar Sperrungen durch Browser und Mail-Clients.
  • Sie können Web-Beschleuniger wie http/2 verwenden, die nur zusammen mit SSL funktionieren.
  • Ein gutes Zertifikat bestärkt das Vertrauen der User. Das schlägt sich in guter Reputation nieder.

Nachtrag

Gemäß unserem Verständnis für Sicherheit halten wir die hier genannten Qualitätsstandards grundsätzlich ein. Wir freuen uns natürlich immer, wenn unsere Kunden trotzdem kritisch nachhaken. Denn dann haben sie verstanden, worum es geht. Aber jede Website-Betreiber, der die Services der BB-ONE.net nutzt, kann sich darauf verlassen, dass wir Standards auch ungefragt einhalten.