Zum Hauptinhalt springen

Installieren eines SSL-Zertifikats auf einem Apache2-Webserver: Vollständige Anleitung

Der Schutz der Website und die Gewährleistung der Datensicherheit sind die Hauptaufgaben des Webentwicklers. Einer der wichtigsten Schritte zur Verbesserung der Sicherheit Ihres Webservers ist die Installation eines SSL-Zertifikats. Dadurch können Sie das HTTPS-Protokoll verwenden, das eine sichere Verbindung zwischen Clients und dem Server ermöglicht.

Apache2 – einer der beliebtesten Webserver, der umfangreiche Möglichkeiten zum Installieren und Konfigurieren eines SSL-Zertifikats bietet. In diesem Handbuch werden alle Schritte zur Installation eines SSL-Zertifikats auf einem Apache2-Webserver beschrieben.

Wichtig ist, dass Sie zum Installieren eines SSL-Zertifikats bereits ein fertiges Zertifikat benötigen, das Sie von einem Zertifizierungszentrum erwerben können, oder dass Sie kostenlose Zertifikate aus dem Projekt Let's Encrypt verwenden können.

Schritt 1: Vorbereitung vor der Installation

Bevor Sie mit der Installation beginnen, stellen Sie sicher, dass:

  • Ihr Apache2-Server ist installiert und läuft auf der neuesten Version;
  • Sie haben Root-Zugriff auf den Server;
  • Sie haben grundlegende Kenntnisse über die Arbeit mit der Befehlszeile unter Linux;
  • Sie haben den Domainnamen registriert, der für die SSL-Verbindung verwendet werden soll;
  • Sie haben ein SSL-Zertifikat von einer vertrauenswürdigen Zertifizierungsstelle (CA) erhalten oder es selbst generiert;
  • Sie haben einen privaten Zertifikatschlüssel und eine Zertifikatkette (falls zutreffend).

Schritt 2: Erstellen einer CSR-Abfrage

Bevor Sie ein SSL-Zertifikat bestellen können, müssen Sie eine CSR-Anforderung (CSR-Anforderung) erstellen. Diese Abfrage enthält Informationen über Ihren Webserver und die Organisation, zu der er gehört. Die CSR-Anforderung erfordert einen privaten Schlüssel, der zum Verschlüsseln von Daten verwendet wird.

1. Sie benötigen eine Befehlszeile, um eine CSR-Abfrage und einen privaten Schlüssel zu erstellen. Wenn Sie Apache bereits installiert haben, öffnen Sie ein Terminal und gehen Sie in das Verzeichnis mit den Apache-Konfigurationsdateien:

$ cd /etc/apache2

2. Erstellen Sie nun einen privaten Schlüssel und eine CSR-Abfrage:

$ openssl req -new -newkey rsa:2048 -nodes -keyout server.key -out server.csr

Hier verwenden wir den Befehl openssl mit den Parametern req (Zertifikatanforderung), new (neue Anforderung erstellen), newkey (neuen privaten Schlüssel generieren), rsa:2048 (RSA-Algorithmus mit Schlüssellänge von 2048 Bit verwenden), nodes (privaten Schlüssel nicht verschlüsseln) und keyout (Dateinamen angeben, um den privaten Schlüssel zu speichern) sowie out (Dateinamen angeben, um die CSR-Anforderung zu speichern).

3. Wenn Sie diesen Befehl ausführen, werden Sie aufgefordert, Informationen zu Ihrem Server und Ihrer Organisation einzugeben:

Country Name (2 letter code) [AU]:RUState or Province Name (full name) [Some-State]:MoscowLocality Name (eg, city) []:MoscowOrganization Name (eg, company) [Internet Widgits Pty Ltd]:ООО Моя КомпанияOrganizational Unit Name (eg, section) []:ITCommon Name (e.g. server FQDN or YOUR name) []:example.comEmail Address []:[email protected]

Geben Sie anstelle der obigen Beispiele die tatsächlichen Informationen zu Ihrem Server und Ihrer Organisation an.

4. Nachdem der Befehl erfolgreich ausgeführt wurde, werden im Verzeichnis /etc/apache2 zwei Dateien angezeigt: server.key (privater Schlüssel) und server.csr (CSR-Abfrage).

Fahren Sie im nächsten Abschnitt fort, um zu erfahren, wie Sie ein SSL-Zertifikat mithilfe einer erstellten CSR-Anforderung bestellen.

Schritt 3: Bestellen und Erhalten eines SSL-Zertifikats

Bevor Sie ein SSL-Zertifikat auf dem Server installieren können, müssen Sie das Zertifikat selbst bestellen und erhalten. Hier sind einige Schritte, die Sie ausführen müssen, um ein SSL-Zertifikat erfolgreich zu erhalten:

  1. Wählen Sie einen SSL-Zertifikatanbieter aus - das Unternehmen oder die Organisation, die Ihnen das Zertifikat ausstellt.
  2. Registrieren Sie sich auf der Website des ausgewählten Anbieters und erstellen Sie Ihr Konto.
  3. Wählen Sie den Zertifikatstyp aus, der Ihren Anforderungen entspricht. Im Allgemeinen sind verschiedene Zertifikatstypen verfügbar, z. B. einzelne Domäne, mehrere Domäne (SAN), erweiterte Validierung (EV) und andere.
  4. Geben Sie Informationen zu Ihrer Domain oder Ihren Domains an. Möglicherweise müssen Sie eine primäre Domäne, Subdomains oder andere sekundäre Domänen angeben.
  5. Überprüfen Sie, ob die angegebenen Informationen korrekt sind, und bestätigen Sie die Bestellung des Zertifikats.
  6. Bezahlen Sie den Wert des Zertifikats. Normalerweise bietet der Zertifikatanbieter verschiedene Zahlungsmethoden an.
  7. Beantragen Sie ein Zertifikat (CSR). Dies ist eine Textdatei, die den öffentlichen Schlüssel und Informationen zu Ihrer Organisation enthält.
  8. Reichen Sie die Zertifikatanforderung an den Lieferanten weiter. Dies geschieht normalerweise über die Website-Schnittstelle des Anbieters.
  9. Warten Sie, bis das Zertifikat überprüft und aktiviert wurde. In einigen Fällen ist möglicherweise eine zusätzliche Überprüfung Ihrer Organisation oder Domäne erforderlich.
  10. Erhalten Sie ein SSL-Zertifikat als Datei oder Text.

Nachdem Sie das SSL-Zertifikat erhalten haben, können Sie es auf Ihrem Apache2-Webserver installieren. Befolgen Sie die weiteren Schritte in unserem Leitfaden, um diesen Prozess abzuschließen.

Schritt 4: Installieren des Zertifikats auf dem Apache2-Webserver

Nachdem Sie das SSL-Zertifikat von der Zertifizierungsstelle (CA) erhalten haben, müssen Sie es auf dem Apache2-Webserver installieren. In diesem Abschnitt zeigen wir Ihnen, wie Sie diese Aufgabe ausführen können.

Stellen Sie zunächst sicher, dass Sie über alle erforderlichen SSL-Zertifikatdateien verfügen. Dies sind normalerweise die folgenden Dateien:

DateinameDie Beschreibung
my_domain.crtVon der Zertifizierungsstelle bereitgestellte Zertifikatdatei
my_domain.keyPrivater Zertifikatschlüssel
my_domain.ca-bundleSekundäre Datei mit Zwischenzertifikaten

1. Verschieben Sie die Zertifikatdateien in das Verzeichnis /etc/ssl/certs/. Wenn Sie bereits andere Zertifikate in diesem Verzeichnis haben, stellen Sie sicher, dass Sie das neue Zertifikat an der richtigen Stelle für Ihre Domäne ablegen.

2. Öffnen Sie die Apache2-Konfigurationsdatei, die sich normalerweise im Verzeichnis /etc/apache2/ befindet. Es kann mehrere Konfigurationsdateien geben, z. B. apache2.conf oder httpd.conf. Finden Sie die Konfigurationsdatei des virtuellen Hosts, die Ihrer Domäne entspricht.

3. Suchen Sie im virtuellen Host nach dem Abschnitt "VirtualHost" und fügen Sie die folgenden Zeilen innerhalb dieses Abschnitts hinzu:

SSLEngine onSSLCertificateFile /etc/ssl/certs/my_domain.crtSSLCertificateKeyFile /etc/ssl/certs/my_domain.keySSLCertificateChainFile /etc/ssl/certs/my_domain.ca-bundle

4. Starten Sie den Apache2-Webserver neu, damit die Änderungen wirksam werden:

sudo service apache2 restart

Ihr SSL-Zertifikat muss jetzt auf dem Apache2-Webserver installiert sein. Sie können die korrekte Installation überprüfen, indem Sie Ihre Domain über das HTTPS-Protokoll besuchen.

Es ist wichtig sich daran zu erinnern, dass die Installation eines SSL-Zertifikats nur eine der Phasen ist, in denen die Sicherheit Ihres Webservers gewährleistet ist. Andere Sicherheitsmaßnahmen, wie das Aktualisieren des Systems und das Anwenden von Patches, sind ebenfalls äußerst wichtig, um Ihren Server zu schützen.

Schritt 5: Konfigurieren der HTTP-Umleitung zu HTTPS

Um die Umleitung zu konfigurieren, fügen Sie der Apache2-Konfigurationsdatei den folgenden Code hinzu:

ServerName example.com

Redirect / https://example.com/

In diesem Beispiel konfigurieren wir eine Umleitung für einen Server mit dem Namen example.com . Sie können ersetzen example.com auf Ihren Domain-Namen.

Nachdem Sie diesen Code hinzugefügt haben, speichern und schließen Sie die Datei. Starten Sie dann Apache2 neu, damit die Änderungen wirksam werden:

```sudo service apache2 restart```

Jeder Datenverkehr, der an eine unverschlüsselte Verbindung (HTTP) gelangt, wird jetzt automatisch an eine sichere Verbindung (HTTPS) weitergeleitet.

Schritt 6: Überprüfen der korrekten Installation des SSL-Zertifikats

Nachdem Sie das SSL-Zertifikat auf dem Apache2-Webserver installiert haben, müssen Sie sicherstellen, dass es korrekt ist. In diesem Abschnitt werden wir verschiedene Möglichkeiten untersuchen, um zu überprüfen, ob das Zertifikat ordnungsgemäß installiert ist.

  1. Öffnen Sie einen Webbrowser und geben Sie die URL Ihrer Website in die Adressleiste ein, beginnend mit https://. Wenn in der Adressleiste ein grünes Schloss angezeigt wird, bedeutet dies, dass das Zertifikat erfolgreich installiert wurde und Ihre Website jetzt über eine sichere Verbindung verfügt.
  2. Verwenden Sie Online-SSL-Zertifikatüberprüfungstools wie den SSL Shopper SSL Checker oder den SSL Labs SSL Server Test. Geben Sie die URL Ihrer Website ein und klicken Sie auf die Schaltfläche "Überprüfen". Das Tool überprüft verschiedene Aspekte des Zertifikats, einschließlich der Zertifizierungskette und detaillierter Konfigurationsinformationen. Wenn alle Indikatoren positiv sind, wurde das Zertifikat korrekt installiert.
  3. Ändern Sie vorübergehend die Hosts-Datei Ihres Betriebssystems, um den Domainnamen Ihrer Website an die lokale IP-Adresse des Webservers zu binden. Öffnen Sie dann einen Webbrowser und navigieren Sie über das HTTPS-Protokoll zum Domainnamen Ihrer Website. Wenn die Site fehlerfrei geöffnet wird und das richtige SSL-Zertifikat angezeigt wird, ist die Installation erfolgreich.

Sie können eine dieser Methoden oder eine Kombination mehrerer Methoden verwenden, um sicherzustellen, dass das SSL-Zertifikat auf Ihrem Apache2-Webserver ordnungsgemäß installiert ist. Dadurch wird sichergestellt, dass die Datenübertragung zwischen Ihrem Server und Ihren Clients sicher ist.

Schritt 7: Aktualisieren des SSL-Zertifikats

Stellen Sie sicher, dass Sie ein neues SSL-Zertifikat zusammen mit den entsprechenden privaten Schlüsseln haben, bevor Sie mit dem Upgrade beginnen. Diese Dateien müssen Ihnen von Ihrer Organisation oder Ihrem Zertifizierungszentrum zur Verfügung gestellt werden.

Schritte zum Aktualisieren eines SSL-Zertifikats:

  1. Öffnen Sie ein Terminal und melden Sie sich als Administrator an.
  2. Wechseln Sie in das Verzeichnis, in dem die SSL-Zertifikate gespeichert sind. Dies ist normalerweise /etc/apache2/ssl.
  3. Sichern Sie Ihre alten Zertifikate, um sie bei Bedarf wiederherstellen zu können.
  4. Ersetzen Sie alte Zertifikate durch neue Zertifikate. Kopieren Sie das neue SSL-Zertifikat und den privaten Schlüssel in das SSL-Verzeichnis.
  5. Geben Sie in der Apache2-Konfigurationsdatei die Pfade zu den neuen Zertifikats- und privaten Schlüsseldateien an (normalerweise /etc/apache2/sites-available/default-ssl).conf).
  6. Starten Sie den Apache2-Webserver neu, damit die Änderungen wirksam werden.
  7. Überprüfen Sie das aktualisierte SSL-Zertifikat mithilfe verschiedener Online-Tools zur Überprüfung des Zertifikats.

Nachdem Sie diese Schritte ausgeführt haben, verwendet Ihr Apache2-Webserver das aktualisierte SSL-Zertifikat, um die Kommunikation mit Ihren Kunden sicher zu verschlüsseln. Das regelmäßige Aktualisieren eines SSL-Zertifikats ist eine gute Vorgehensweise, um die Sicherheit Ihres Webservers aufrechtzuerhalten.