GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So installieren Sie das SSL-Zertifikat auf Apache für CentOS 7

Einführung

SSL-Zertifikate sind kleine Datendateien, die den Besitz eines öffentlichen kryptografischen Schlüssels bescheinigen. Zertifizierungsstellen (CA) garantieren, dass der Schlüssel zu einer Organisation, einem Server oder einer anderen Entität gehört, die im Zertifikat aufgeführt ist.

Wenn ein Benutzer über seinen Browser auf eine zertifizierte Website zugreift, werden die Informationen mit einem eindeutigen öffentlichen Schlüssel verschlüsselt Die Daten können nur mit einem eindeutigen privaten Schlüssel entschlüsselt werden befindet sich auf dem Hostserver. Diese hohe Verschlüsselungsstufe verhindert unbefugte Zugriffsversuche auf die Informationen.

In diesem Tutorial erfahren Sie, wie Sie ein SSL-Zertifikat unter CentOS 7 installieren

Voraussetzungen

  • Ein Benutzer mit sudo Privilegien
  • Zugriff auf eine Befehlszeile (Strg-Alt-T)
  • Eine CentOS 7-Maschine
  • Ein gültiger Domainname, dessen DNS auf den Server verweist

So erhalten Sie ein SSL-Zertifikat

Es gibt mehrere Möglichkeiten, Zertifikate zu erhalten:

  1. Verwendung einer automatisierten und kostenlosen Zertifizierungsstelle wie dem Projekt Let’s Encrypt.
  2. Kommerzielle Zertifizierungsstellen stellen Zertifikate gegen Gebühr bereit (Comodo, DigiCert, GoDaddy)
  3. Alternativ ist es möglich, ein selbstsigniertes Zertifikat zu erstellen Dieser Zertifikatstyp ist für Testzwecke oder zur Verwendung in einer Entwicklungsumgebung nützlich.

Wenn Sie immer noch überlegen, welche Art von Zertifikat Sie benötigen oder welche Zertifizierungsstelle Sie wählen sollen, haben wir einen umfassenden Leitfaden zu SSL-Zertifikaten, privaten Schlüsseln und CSRs vorbereitet, um Sie bei diesem Prozess zu unterstützen.

SSL-Zertifikat mit Let’s Encrypt installieren

Let’s Encrypt ist eine kostenlose, offene und automatisierte Zertifizierungsstelle. Es verwendet den certbot Softwaretool zur automatischen Verwaltung von Zertifikaten.

Certbot ist ein hochautomatisiertes Tool. Stellen Sie sicher, dass Ihre Apache-Installation gültig ist und dass Sie einen virtuellen Host für Ihre Domain/s konfiguriert haben. Sie sollten zuerst unser Tutorial zur Installation von Apache auf CentOS 7 lesen, wenn Sie Hilfe bei der Konfiguration Ihrer Firewall und virtuellen Hosts benötigen.

Certbot-Installation

1. Verwenden Sie das Befehlsterminal, um EPEL zu installieren -Repository und yum-utils :

sudo yum –y install epel-release yum-utils

2. Installieren Sie als Nächstes ein Modul, das SSL für Apache unterstützt:

sudo yum -y install mod_ssl

In diesem Beispiel ist die neueste Version des Moduls bereits verfügbar.

3. Wir können jetzt certbot installieren für Apache:

sudo yum –y install python-certbot-apache

4. Sobald die Installation abgeschlossen ist, können Sie den Prozess zum Erhalt eines Zertifikats starten, indem Sie Folgendes eingeben:

sudo certbot –apache –d yourdomain.com

Alternativ können Sie certbot starten indem Sie Folgendes eingeben:

sudo certbot

5. Der Kunde bittet Sie, eine E-Mail-Adresse anzugeben und die Nutzungsbedingungen zu lesen und zu akzeptieren. Certbot listet dann die auf Ihrem Server verfügbaren Domains auf. Aktivieren Sie HTTPS für bestimmte Domains oder alle, indem Sie das Feld leer lassen.

Die nächste Eingabeaufforderung ermöglicht es Ihnen, alle Anfragen zum sicheren HTTPS-Zugriff zu zwingen.

Sobald Sie Ihre Auswahl getroffen haben, bestätigt die Meldung auf dem Terminal, dass Sie die Verschlüsselung für Ihre Domain aktiviert haben.

Automatische Zertifikatserneuerung

Die von Let’s Encrypt ausgestellten Zertifikate sind 90 Tage gültig. Der Certbot erneuern überprüft die installierten Zertifikate und versucht, sie zu erneuern, wenn sie in weniger als 30 Tagen ablaufen. Um diesen Vorgang zu automatisieren, erstellen Sie einen Cronjob um den Befehl regelmäßig auszuführen.

Verwenden Sie Ihren bevorzugten Texteditor, um festzulegen, wie oft die Erneuerung ausgeführt werden soll Befehl:

sudo crontab -e

Geben Sie diese Zeile ein und speichern Sie die crontab:

* */12 * * * /usr/bin/certbot renew >/dev/null 2>&1

So installieren Sie ein SSL-Zertifikat mit Comodo

1. Der erste Schritt besteht darin, eine Zertifikatsunterzeichnungsanforderung einzureichen an eine Zertifizierungsstelle. Unser ausführlicher Leitfaden zum Generieren einer Zertifikatssignierungsanforderung (CSR) mit OpenSSL ist eine hervorragende Ressource, wenn Sie Unterstützung bei diesem Prozess benötigen.

2. Sobald eine Zertifizierungsstelle Ihre Anfrage zertifiziert hat, erhalten Sie eine Kopie Ihres SSL-Zertifikats. Sie können das Zertifikat jetzt auf Ihrem CentOS 7-Server installieren.

Dieses Beispiel zeigt, wie ein Zertifikat von einem kostenpflichtigen SSL-Anbieter, Comodo, installiert wird.

3. Sobald Comodo die Anfrage Ihres CSR verifiziert hat, laden Sie die SSL-Dateien herunter. Kopieren Sie sie (ComodoRSACA.crt ) und das primäre Zertifikat (yourdomain.crt ), in Ihr Apache-Serververzeichnis. Der private Schlüssel die während des CSR-Prozesses (Certificate Signing Request) generiert werden, müssen sich auf demselben Server befinden.

Virtuelle Hosts für SSL konfigurieren

Nachdem Sie die Domain erfolgreich zertifiziert und die Schlüsseldateien auf dem Server abgelegt haben, besteht der nächste Schritt darin, die virtuellen Hosts so zu konfigurieren, dass sie das Zertifikat anzeigen.

1. Greifen Sie auf die SSL-Konfigurationsdatei zu:

sudo nano /etc/httpd/conf.d/ssl.conf

2. Bearbeiten Sie die Konfigurationsdatei so, dass sie auf die richtigen Dateien auf Ihrem Server verweist.

Entkommentieren Sie die folgenden Zeilen im Abschnitt und geben Sie die korrekten Dateipfade ein:

  • DocumentRoot „/var/www/ihredomain.com“
  • Servername ihredomain.com:443
  • SSLEngine auf
  • SSLCertificateFile – Der Pfad Ihrer Zertifikatsdatei.
  • SSLCertificateKeyFile – Der Pfad Ihrer Schlüsseldatei.
  • SSLCertificateChainFile – Die COMODO-Zwischenzertifikatsdatei.

3. Nachdem Sie die erforderlichen Änderungen vorgenommen haben, beenden Sie die Datei (Strg+X) und drücken Sie y um die Änderungen zu speichern.

4. Testen Sie Ihre Apache-Konfiguration vor dem Neustart. Stellen Sie sicher, dass die Syntax korrekt ist, indem Sie Folgendes eingeben:

sudo apachectl configtest

5. Sobald das System bestätigt, dass die Syntax korrekt ist, starten Sie Apache neu:

sudo systemctl restart httpd

Sie haben jetzt Ihren Apache-Server für die Verwendung des SSL-Zertifikats eingerichtet.

So erstellen Sie ein selbstsigniertes SSL-Zertifikat

Ein selbstsigniertes Zertifikat ist zum Testen, in Entwicklungsumgebungen und in einem Intranet nützlich.

1. Wie bei Let’s Encrypt ist die mod_ssl Das Apache-Modul bietet Unterstützung für die SSL-Verschlüsselung:

sudo yum –y install mod_ssl

2. Erstellen Sie ein neues Verzeichnis zum Speichern des privaten Schlüssels:

sudo mkdir /etc/ssl/privatekey

3. Beschränken Sie den Zugriff auf dieses Verzeichnis nur auf den Root-Benutzer:

sudo chmod 700 /etc/ssl/privatekey

4. Generieren Sie mit diesem OpenSSL-Befehl ein selbstsigniertes Zertifikat:

sudo openssl req -x509 -new -newkey rsa:2048  -nodes -days 365 -keyout /etc/ssl/privatekey/ yourdomain.key -out /etc/ssl/certs/yourdomain.csr

Dies ist eine detaillierte Übersicht der Elemente:

  • openssl – aktiviert die OpenSSL-Software
  • erforderlich – weist darauf hin, dass wir einen CSR benötigen
  • -x509 – gibt an, dass die X.509-Signaturanforderung verwendet werden soll
  • -new -newkey – Generieren Sie einen neuen Schlüssel
  • rsa:2048 – Generieren Sie einen mathematischen 2048-Bit-RSA-Schlüssel
  • -Knoten – kein DES, d. h. den privaten Schlüssel in einer PKCS#12-Datei nicht verschlüsseln
  • Tage 365 Anzahl der Tage, die das Zertifikat gültig ist
  • -keyout – gibt die Domäne an, für die Sie einen Schlüssel generieren
  • -aus – gibt den Namen der Datei an, die die CSR enthält

5. Das System startet einen Fragebogen, den Sie ausfüllen müssen.

Geben Sie Ihre Informationen in die verfügbaren Felder ein:

  • Landesname – Verwenden Sie einen 2-Buchstaben-Ländercode
  • Staat – der Staat, in dem der Domaininhaber eingetragen ist
  • Ort – die Stadt, in der der Domaininhaber eingetragen ist
  • Organisationsname – eine Entität, die die Domain besitzt
  • Name der Organisationseinheit –die Abteilung oder Gruppe in Ihrer Organisation, die mit Zertifikaten arbeitet
  • Allgemeiner Name – meistens der vollqualifizierte Domänenname (FQDN)
  • E-Mail-Adresse – Kontakt-E-Mail-Adresse
  • Challenge-Passwort – Definieren Sie ein optionales Passwort für Ihr Schlüsselpaar

Das Bild stellt einen Beispielfragebogen in CentOS 7 dar.

6. Fahren Sie mit der Konfiguration des virtuellen Hosts fort, um das neue Zertifikat anzuzeigen. Der Vorgang ist identisch mit den in Kapitel 2, Konfigurieren virtueller Hosts für SSL, beschriebenen Schritten.

7. Testen Sie Ihre Apache-Konfiguration vor dem Neustart. Um sicherzustellen, dass die Syntax korrekt ist, geben Sie Folgendes ein:

sudo apachectl configtest

8. Sobald das System bestätigt, dass die Syntax korrekt ist, starten Sie Apache neu:

sudo systemctl restart httpd

Sie haben Ihren Apache-Server jetzt so eingerichtet, dass er Ihr selbstsigniertes SSL-Zertifikat verwendet, und sollten Ihre Website mit aktiviertem SSL besuchen können.

Wie überprüfe ich, ob ein SSL-Zertifikat gültig ist?

Um zu überprüfen, ob ein SSL-Zertifikat gültig ist, können Sie öffentlich verfügbare Dienste wie den SSL-Servertest nutzen. Bestätigen Sie den Status Ihres Zertifikats und überprüfen Sie, ob alle Details korrekt sind.

Greifen Sie alternativ über https:// auf Ihre Website zu um zu sehen, ob das SSL-Zertifikat sichtbar ist. Das grüne Vorhängeschloss zeigt an, dass die zusätzliche Verschlüsselungsebene vorhanden ist.


Cent OS
  1. So installieren Sie SSL auf RHEL 8 / CentOS 8

  2. So installieren Sie Apache Cassandra unter CentOS 8

  3. So installieren Sie Apache unter CentOS 7

  4. So installieren Sie Apache Kafka unter CentOS 8

  5. CentOS / RHEL:So aktivieren Sie SSL für Apache

So installieren Sie Apache CouchDB auf CentOS 7

So installieren Sie Apache ServiceMix unter CentOS 7

So installieren Sie Apache Cassandra in CentOS

So installieren Sie elgg unter CentOS 8

So installieren Sie ein kostenloses SSL-Zertifikat für Apache unter CentOS 8

So installieren Sie ein kostenloses SSL-Zertifikat für Nginx unter CentOS 8