Tutorials  /  Security

SSL-Zertifikat von einer kommerziellen CA installieren

Ccentron Redaktion · Dezember 2024 ·10 Min. Lesezeit ·Security, Tutorial

Einleitung

Dieses Tutorial zeigt Ihnen, wie Sie ein SSL-Zertifikat von einer vertrauenswürdigen, kommerziellen Zertifizierungsstelle (Certificate Authority, CA) erwerben und installieren. SSL-Zertifikate ermöglichen es Webservern, ihren Datenverkehr zu verschlüsseln, und bieten auch eine Methode, um die Identität von Servern gegenüber ihren Besuchern zu validieren. Websites, die SSL verwenden, sind über das Protokoll https:// zugänglich.

Vor den 2010er Jahren verwendeten viele kleinere Websites nicht immer SSL oder HTTPS. Seitdem sind die Erwartungen an die Sicherheit gestiegen, und das Let’s Encrypt-Projekt wurde ins Leben gerufen, um kostenlose, vertrauenswürdige SSL-Zertifikate im großen Maßstab bereitzustellen, sodass fast jeder HTTPS nach Bedarf verwenden kann.

Es gibt jedoch einige Einschränkungen bei Let’s Encrypt-Zertifikaten. Sie laufen alle 3 Monate ab und erfordern in der Regel ein funktionierendes Skript zur automatischen Erneuerung. Außerdem sind sie in Umgebungen, in denen dies nicht möglich ist, unpraktisch. Let’s Encrypt bietet keine Extended Validation-Zertifikate, die die rechtmäßige Inhaberschaft Ihrer Webpräsenz validieren, oder Wildcard-Zertifikate, die automatisch mit jeder möglichen Subdomain Ihrer Website übereinstimmen (z. B. shop.beispiel.de), ohne dass Sie jede von ihnen manuell registrieren müssen.

Für die meisten Nutzer sind dies jedoch keine wesentlichen Einschränkungen. Let’s Encrypt ist eine beliebte Option für viele private und kommerzielle Websites. Wenn Sie jedoch spezielle Anforderungen an Unternehmenssoftware oder einen sehr großen kommerziellen Betrieb haben, sollten Sie den Kauf eines Zertifikats von einer kommerziellen CA in Betracht ziehen.

Dieses Tutorial behandelt die Auswahl und Bereitstellung eines SSL-Zertifikats von einer vertrauenswürdigen Zertifizierungsstelle. Nachdem Sie Ihr SSL-Zertifikat erworben haben, behandelt dieses Tutorial die Installation auf den Webservern Nginx und Apache.

SEC

Passende Infrastruktur bei centron

Absicherung endet nicht beim Server: Cloud Firewalls filtern den Datenverkehr vor der VM – zentral verwaltet, ohne Aufpreis je Regel. Cloud Firewalls ansehen →

Voraussetzungen

Es gibt mehrere Voraussetzungen, um zu versuchen, ein SSL-Zertifikat von einer kommerziellen CA zu erhalten:

  • Ein registrierter Domainname. In diesem Tutorial wird durchgehend beispiel.de verwendet. Sie können einen Domainnamen bei Namecheap erwerben, kostenlos bei Freenom erhalten oder den Domain-Registrar Ihrer Wahl nutzen.
  • Zugriff auf eine der E-Mail-Adressen im WHOIS-Datensatz Ihrer Domain oder auf eine „Admin“-E-Mail-Adresse der Domain. Zertifizierungsstellen, die SSL-Zertifikate ausstellen, validieren in der Regel die Kontrolle über die Domain, indem sie eine Validierungs-E-Mail an eine der Adressen im WHOIS-Datensatz der Domain oder an eine allgemeine Admin-E-Mail-Adresse der Domain senden.
  • DNS-Einträge, die für Ihren Server eingerichtet sind.
  • Dieses Tutorial enthält Konfigurationsanweisungen für einen Ubuntu 22.04-Server, der gemäß der Anleitung zur Ersteinrichtung von Ubuntu 22.04 eingerichtet wurde, einschließlich eines sudo-fähigen Benutzers ohne Root-Rechte und einer Firewall.
  • Ein installierter Webserver wie Nginx oder Apache. Stellen Sie sicher, dass Sie einen Serverblock (oder virtuellen Apache-Host) für Ihre Domain haben.

Schritt 1 – Auswahl Ihrer Zertifizierungsstelle

Wenn Sie nicht sicher sind, welche Zertifizierungsstelle Sie verwenden sollen, gibt es einige Faktoren, die Sie berücksichtigen sollten:

Mitgliedschaft in Root-Zertifikatsprogrammen

Der wichtigste Punkt ist, dass die von Ihnen gewählte CA Mitglied der Root-Zertifikatsprogramme der am häufigsten verwendeten Betriebssysteme und Webbrowser ist, d. h., sie ist eine „vertrauenswürdige“ CA, und ihr Root-Zertifikat wird von gängigen Browsern und anderer Software als vertrauenswürdig eingestuft. Wenn das SSL-Zertifikat Ihrer Website von einer vertrauenswürdigen CA signiert wurde, wird dessen Identität von Software, die der CA vertraut, als gültig angesehen.

Die meisten kommerziellen CAs, die Sie antreffen werden, sind Mitglieder der gängigen Root-CA-Programme. Es schadet jedoch nicht, dies vor dem Kauf Ihres Zertifikats zu überprüfen. Apple veröffentlicht beispielsweise seine Liste der vertrauenswürdigen SSL-Root-Zertifikate.

Zertifikatstypen

Stellen Sie sicher, dass Sie eine CA wählen, die den von Ihnen benötigten Zertifikatstyp anbietet. Viele CAs bieten Variationen dieser Zertifikatstypen unter einer Vielzahl von Namen und Preismodellen an. Hier ist eine kurze Beschreibung der einzelnen Typen:

  • Einzelne Domain: Wird für eine einzelne Domain verwendet, z. B. beispiel.de. Zusätzliche Subdomains wie www.beispiel.de sind nicht enthalten.
  • Wildcard: Wird für eine Domain und alle ihre Subdomains verwendet. Ein Wildcard-Zertifikat für *.beispiel.de kann z. B. auch für www.beispiel.de und shop.beispiel.de verwendet werden.
  • Mehrere Domains: Diese können mit mehreren Domains und Subdomains verwendet werden, die dem Feld „Subject Alternative Name“ hinzugefügt werden. Ein einziges Multi-Domain-Zertifikat könnte z. B. für beispiel.de, www.beispiel.de und beispiel.net verwendet werden.

Validierungsstufen

Zusätzlich zu den oben genannten Zertifikatstypen gibt es verschiedene Validierungsstufen, die von CAs angeboten werden:

  • Domain-Validierung (DV): DV-Zertifikate werden ausgestellt, nachdem die CA bestätigt hat, dass der Anforderer die Domain besitzt oder kontrolliert.
  • Organisationsvalidierung (OV): OV-Zertifikate können nur ausgestellt werden, nachdem die ausstellende CA die rechtliche Identität des Anforderers überprüft hat.
  • Erweiterte Validierung (EV): EV-Zertifikate können nur ausgestellt werden, nachdem die ausstellende CA die rechtliche Identität und weitere Details des Anforderers gemäß einem strengen Satz von Richtlinien überprüft hat. Der Zweck dieses Zertifikatstyps besteht darin, den Besuchern Ihrer Website zusätzliche Sicherheit in Bezug auf die Legitimität der Identität Ihrer Organisation zu bieten. EV-Zertifikate können für eine einzelne oder mehrere Domains ausgestellt werden, jedoch nicht für Wildcards.

Zusätzliche Funktionen

Viele CAs bieten eine Vielzahl von „Bonus“-Funktionen an, um sich von anderen Anbietern von SSL-Zertifikaten abzuheben. Einige dieser Funktionen können Ihnen Geld sparen, daher ist es wichtig, Ihre Bedürfnisse mit den Angeboten abzugleichen, bevor Sie einen Kauf tätigen. Beispiele für Funktionen, auf die Sie achten sollten, sind kostenlose Zertifikatsneuausstellungen oder ein preisgünstiges Zertifikat für eine einzelne Domain, das sowohl für www. als auch für den Basenamen der Domain funktioniert, z. B. www.beispiel.de mit einem SAN von beispiel.de.

Schritt 2 – Generieren eines CSR und eines privaten Schlüssels

Nachdem Sie Ihre Voraussetzungen geklärt haben und wissen, welchen Zertifikatstyp Sie benötigen, ist es an der Zeit, eine Zertifikatsanforderung (CSR) und einen privaten Schlüssel zu generieren.

Wenn Sie planen, Apache HTTP oder Nginx als Webserver zu verwenden, können Sie den Befehl openssl verwenden, um Ihren privaten Schlüssel und Ihre CSR auf Ihrem Webserver zu generieren. In diesem Tutorial können Sie alle relevanten Dateien in Ihrem Home-Verzeichnis aufbewahren, aber Sie können sie auch an einem anderen sicheren Ort auf Ihrem Server speichern:

Code
openssl req -newkey rsa:2048 -nodes -keyout beispiel.de.key -out beispiel.de.csr

An dieser Stelle werden Sie aufgefordert, mehrere Informationen einzugeben, die in Ihrer Zertifikatsanforderung enthalten sein werden. Der wichtigste Teil ist das Feld „Common Name“, das mit dem Namen übereinstimmen sollte, den Sie mit Ihrem Zertifikat verwenden möchten – z. B. beispiel.de, www.beispiel.de oder (für eine Wildcard-Zertifikatsanforderung) *.beispiel.de. Wenn Sie planen, ein OV- oder EV-Zertifikat zu erhalten, stellen Sie sicher, dass alle anderen Felder Ihre Organisations- oder Unternehmensdaten genau widerspiegeln. Das Bereitstellen eines „Challenge Password“ ist nicht erforderlich.

Beispiel:

Code
Country Name (2 letter code) [AU]:DE
State or Province Name (full name) [Some-State]:Bayern
Locality Name (eg, city) []:München
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Mein Unternehmen
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:beispiel.de
Email Address []:info@beispiel.de

Dies generiert eine .key- und eine .csr-Datei. Die .key-Datei ist Ihr privater Schlüssel und sollte sicher aufbewahrt werden. Die .csr-Datei ist das, was Sie an die CA senden, um Ihr SSL-Zertifikat zu beantragen.

Listen Sie Ihre generierten Dateien auf, um sie zu bestätigen:

Code
ls beispiel.de*

Um den Inhalt Ihrer CSR anzuzeigen, verwenden Sie den folgenden Befehl:

Code
cat beispiel.de.csr

Schritt 3 – Erwerb und Erhalt eines Zertifikats

Es gibt viele kommerzielle CA-Anbieter, und Sie können die für Ihre Einrichtung am besten geeigneten Optionen vergleichen. Zum Beispiel fungiert Namecheap als Wiederverkäufer von SSL-Zertifikaten und bietet derzeit Zertifikate von Comodo CA an. Nachdem Sie eine Auswahl getroffen haben, müssen Sie die in Schritt 2 generierte CSR hochladen. Ihr CA-Anbieter wird außerdem wahrscheinlich einen „Genehmigung“-Schritt enthalten, der eine Validierungsanfrage-E-Mail an eine Adresse im WHOIS-Datensatz Ihrer Domain oder an eine Administratoradresse der Domain sendet, für die Sie ein Zertifikat erhalten.

Nach der Genehmigung des Zertifikats wird es an den benannten Administrator per E-Mail gesendet. Speichern Sie es auf Ihrem Server an dem gleichen Ort, an dem Sie Ihren privaten Schlüssel und die CSR generiert haben. Benennen Sie das Zertifikat mit dem Domainnamen und der Erweiterung .crt, z. B. beispiel.de.crt, und benennen Sie das Zwischenzertifikat intermediate.crt.

Schritt 4 – Aktualisierung Ihrer Firewall, um HTTPS zuzulassen

Wenn Sie die ufw-Firewall gemäß den Empfehlungen unseres Ubuntu 22.04-Einrichtungsleitfadens aktiviert haben, müssen Sie die Einstellungen anpassen, um HTTPS-Verkehr zuzulassen. Nginx und Apache registrieren bei der Installation einige Profile bei ufw.

Sie können die aktuellen Einstellungen anzeigen, indem Sie Folgendes eingeben:

Konsole
sudo ufw status

Wenn Sie eine Ausgabe erhalten, die nur Nginx HTTP oder Apache enthält, ist nur HTTP-Verkehr zum Webserver zugelassen:

Konsole
sudo ufw allow 'Nginx Full'
sudo ufw delete allow 'Nginx HTTP'

Prüfen Sie die aktualisierten Einstellungen:

Konsole
sudo ufw status

Stellen Sie sicher, dass HTTPS-Verkehr aktiviert und HTTP-Verkehr entfernt wurde.

Schritt 5 – Installation eines Zertifikats auf Ihrem Server

Nginx

Wenn Ihre CA nur ein Zwischenzertifikat zurückgegeben hat, müssen Sie eine einzelne „verkettete“ Zertifikatsdatei erstellen:

Code
cat beispiel.de.crt intermediate.crt > beispiel.de.chained.crt

Bearbeiten Sie Ihre Standard-Nginx-Serverblock-Konfigurationsdatei:

Konsole
sudo nano /etc/nginx/sites-enabled/default

Aktualisieren Sie die listen-Direktive, um SSL zu aktivieren, und fügen Sie die Pfade zu Ihrem Zertifikat und privaten Schlüssel hinzu.

Apache

Um ein SSL-Zertifikat manuell auf Apache bereitzustellen, öffnen Sie Ihre Standard-Apache-Konfigurationsdatei für virtuelle Hosts:

Konsole
sudo nano /etc/apache2/sites-available/000-default.conf

Bearbeiten Sie die Datei so, dass Ihr Webserver auf Port 443 lauscht, und geben Sie die Pfade zu Ihrem Zertifikat und Schlüssel an:

Code
SSLEngine on
SSLCertificateFile /home/user/beispiel.de.crt
SSLCertificateKeyFile /home/user/beispiel.de.key
SSLCACertificateFile /home/user/intermediate.crt

Um HTTP-Anfragen automatisch zu HTTPS umzuleiten, fügen Sie Folgendes hinzu:

Code
ServerName beispiel.de
Redirect permanent / https://beispiel.de/

Aktivieren Sie das Apache-SSL-Modul:

Konsole
sudo a2enmod ssl

Starten Sie Apache neu, um die neue Konfiguration zu laden und TLS/SSL über HTTPS zu aktivieren:

Konsole
sudo systemctl restart apache2

Testen Sie Ihre Website, indem Sie sie über HTTPS aufrufen (z. B. https://beispiel.de). Überprüfen Sie außerdem, ob die Weiterleitung von HTTP zu HTTPS wie erwartet funktioniert.

Fazit

In diesem Tutorial haben Sie gelernt, wann Sie ein SSL-Zertifikat von einer kommerziellen Zertifizierungsstelle (CA) erwerben sollten, wie Sie die verfügbaren Optionen vergleichen und Ihre Auswahl treffen können. Außerdem haben Sie gelernt, wie Sie Nginx oder Apache für die Unterstützung von HTTPS konfigurieren können. Indem Sie diese Schritte befolgen, können Sie Ihre Website sichern und Vertrauen bei Ihren Besuchern schaffen.

Jetzt 200 € Guthaben sichern

Testen Sie Ihr Setup auf ccloud³

Registrieren Sie sich in der ccloud³ und erhalten Sie 200 € Startguthaben für Ihr Projekt – z. B. für eine PostgreSQL-VM mit automatischen Backups.

centron Redaktion Technische Redaktion

Das Redaktionsteam von centron schreibt Anleitungen aus dem Betriebsalltag: getestet auf unserer eigenen Plattform, betrieben im Rechenzentrum in Hallstadt bei Bamberg.

Kategorie Security
Teilen
Noch offene Fragen?

Our team will help you with your specific setup - in German or English, by people who run the platform themselves.

War dieses Tutorial hilfreich?

Your answer is stored anonymously and helps us improve our tutorials.

Kommentare

No comments yet - be the first to ask a question about this tutorial.

Sign in to comment

Comments are open to centron customers. Sign in to your account to ask a question about this tutorial.

Weiterlesen

Das könnte Sie auch interessieren

Jetzt kostenlos anfangen

Melden Sie sich an und erhalten Sie in den ersten 60 Tagen ein Guthaben von 200 € bei centron.

Dieses Werbeangebot gilt nur für neue Konten. Angebot ausschließlich für Gewerbetreibende.

Jetzt loslegen Sales kontaktieren