Die Sicherung Ihres Webservers ist immer einer der Schlüsselfaktoren, die Sie berücksichtigen sollten, bevor Sie mit Ihrer Website live gehen. Ein Sicherheitszertifikat ist entscheidend für die Sicherung des von Webbrowsern an Webserver gesendeten Datenverkehrs und inspiriert Benutzer dazu, Daten mit Ihrer Website auszutauschen, in dem vollen Wissen, dass der gesendete Datenverkehr gesichert ist.
In den meisten Fällen werden Sicherheitszertifikate jährlich bezahlt und erneuert. Let’s Encrypt Das Zertifikat ist eine kostenlose, offene und automatisierte Zertifizierungsstelle, mit der Sie Ihre Website verschlüsseln können. Das Zertifikat läuft alle 90 ab Tage und automatische Verlängerung absolut kostenlos.
Empfohlene Lektüre :So sichern Sie Nginx mit Let’s Encrypt unter CentOS 8
In diesem Artikel zeigen wir Ihnen, wie Sie das Let’s Encrypt Certificate installieren können mit Certbot für den Apache Webserver und höher, konfigurieren Sie das Zertifikat so, dass es unter CentOS 8 automatisch erneuert wird .
Voraussetzungen
Bevor Sie beginnen, vergewissern Sie sich, dass Folgendes vorhanden ist:
1. Eine Instanz des CentOS 8-Servers mit installiertem und ausgeführtem Apache HTTP-Webserver. Sie können bestätigen, dass Ihr Apache-Webserver betriebsbereit ist.
$ sudo dnf install httpd $ sudo systemctl status httpd
2. Ein vollständig qualifizierter Domänenname (FQDN ), die auf die öffentliche IP-Adresse Ihres Webservers bei Ihrem DNS-Webhosting-Anbieter verweist. Für diese Anleitung verwenden wir linuxtechwhiz.info
zeigt auf die IP des Servers 34.67.63.136
.
Schritt 1. Certbot in CentOS 8 installieren
Certbot ist ein Client, der die Installation des Sicherheitszertifikats automatisiert. Es ruft das Zertifikat von der Let’s encrypt Authority ab und stellt es ohne großen Aufwand auf Ihrem Webserver bereit.
Certbot ist absolut kostenlos und ermöglicht es Ihnen, das Zertifikat interaktiv zu installieren, indem Sie Anweisungen basierend auf der Konfiguration Ihres Webservers generieren.
Vor dem Herunterladen des certbot , installieren Sie zunächst Pakete, die für die Konfiguration einer verschlüsselten Verbindung notwendig sind.
Wir beginnen mit der Installation des EPEL Repository, das hochwertige Zusatzpakete für RHEL-basierte Systeme bereitstellt:
$ sudo dnf install epel-release
Als nächstes installieren Sie mod_ssl und openssl Pakete.
$ sudo dnf install mod_ssl openssl
Nachdem alle Abhängigkeiten installiert wurden, installieren Sie Certbot und der Apache Modul für Certbot.
$ sudo dnf install certbot python3-certbot-apache
Der Befehl installiert Certbot , das Apache-Modul für Certbot , und andere Abhängigkeiten.
Schritt 2:Erstellen Sie einen virtuellen Apache-Host
Der nächste Schritt besteht darin, eine virtuelle Hostdatei für unsere Domain zu erstellen – linuxtechwhiz.info
. Beginnen Sie damit, zuerst den Dokumentenstamm zu erstellen, in dem Sie Ihre HTML-Dateien platzieren werden.
$ sudo mkdir /var/www/linuxtechwhiz.info.conf
Erstellen Sie eine Test-index.html
Datei wie gezeigt.
$ sudo echo “<h1>Welcome to Apache HTTP server</h1>” > /var/www/linuxtechwhiz.info/index.html
Erstellen Sie als Nächstes eine virtuelle Hostdatei wie gezeigt.
$ sudo vim /etc/httpd/conf.d/linuxtechwhiz.info
Hängen Sie die Konfiguration unten an.
<VirtualHost *:443> ServerName linuxtechwhiz.info ServerAlias www.linuxtechwhiz.info DocumentRoot /var/www/linuxtechwhiz.info/ <Directory /var/www/linuxtechwhiz.info/> Options -Indexes +FollowSymLinks AllowOverride All </Directory> ErrorLog /var/log/httpd/www.linuxtechwhiz.info-error.log CustomLog /var/log/httpd/www.linuxtechwhiz.info-access.log combined </VirtualHost>
Speichern und beenden.
Weisen Sie die Berechtigungen wie gezeigt dem Dokumentenstamm zu.
$ sudo chown -R apache:apache /var/www/linuxtechwhiz.info
Starten Sie den Apache-Dienst neu, damit die Änderungen wirksam werden.
$ sudo systemctl restart httpd
Schritt 3:Installieren Sie das SSL-Zertifikat von Let’s Encrypt auf CentOS 8
Führen Sie nun certbot aus wie gezeigt, um mit der Installation des Let’s Encrypt-Zertifikats zu beginnen .
$ sudo certbot --apache -d domain.com
In unserem Fall ist dies:
$ sudo certbot --apache -d linuxtechwhiz.info
Der Befehl führt Sie durch eine Reihe von Eingabeaufforderungen, damit Sie Lets Encrypt für Ihre Domäne konfigurieren können. Geben Sie unbedingt Ihre E-Mail-Adresse an, akzeptieren Sie die Nutzungsbedingungen und geben Sie die Domänennamen an, die Sie verwenden möchten, um das HTTPS-Protokoll zu verwenden, das die verschlüsselte Version von HTTP ist.
Wenn alles gut gelaufen ist, sollten Sie am Ende eine Glückwunschnachricht erhalten, die Sie darüber informiert, dass Ihre Website mit dem Let’s Encrypt-Zertifikat gesichert wurde . Außerdem wird die Gültigkeit Ihres Zertifikats angezeigt – normalerweise nach 90 Tage nach der Bereitstellung.
Gehen Sie jetzt zurück zu Ihrer virtuellen Hostdatei und hängen Sie die folgenden Konfigurationszeilen an.
SSLEngine On SSLCertificateFile /etc/letsencrypt/live/linuxtechwhiz.info/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/linuxtechwhiz.info/privkey.pem
Speichern und beenden.
Die endgültige Konfiguration des virtuellen Apache-Hosts sieht in etwa so aus:
<VirtualHost *:443> ServerName linuxtechwhiz.info ServerAlias www.linuxtechwhiz.info DocumentRoot /var/www/linuxtechwhiz.info/ <Directory /var/www/linuxtechwhiz.info/> Options -Indexes +FollowSymLinks AllowOverride All </Directory> ErrorLog /var/log/httpd/www.linuxtechwhiz.info-error.log CustomLog /var/log/httpd/www.linuxtechwhiz.info-access.log combined SSLEngine On SSLCertificateFile /etc/letsencrypt/live/linuxtechwhiz.info/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/linuxtechwhiz.info/privkey.pem </VirtualHost>
Starten Sie Apache noch einmal neu.
$ sudo systemctl restart httpd
Schritt 4:Verifizieren des SSL-Zertifikats von Let’s Encrypt
Um zu überprüfen, ob alles funktioniert, starten Sie Ihren Browser und besuchen Sie die IP-Adresse Ihres Servers. Sie sollten jetzt ein Vorhängeschloss-Symbol am Anfang der URL sehen.
Um weitere Details zu erhalten, klicken Sie auf das Vorhängeschloss Symbol &klicken Sie auf das „Zertifikat“. ’-Option im angezeigten Pulldown-Menü.
Die Zertifikatsdetails werden im nächsten Popup-Fenster angezeigt.
Außerdem können Sie Ihren Server unter https://www.ssllabs.com/ssltest/
testen und Ihre Website sollte ein ‘A’
erhalten Klasse wie abgebildet.
Schritt 5:SSL-Zertifikat von Let’s Encrypt automatisch erneuern
Let’s Encrypt gilt nur für 90 Tage nur. Üblicherweise wird der Erneuerungsprozess vom certbot durchgeführt Paket, das /etc/cron.d ein Renew-Skript hinzufügt Verzeichnis. Das Skript wird zweimal täglich ausgeführt und erneuert jedes Zertifikat automatisch innerhalb von 30 Tagen abgelaufen.
Um den automatischen Erneuerungsprozess zu testen, führen Sie einen Probelauftest mit certbot durch .
$ sudo /usr/local/bin/certbot-auto renew --dry-run
Wenn keine Fehler aufgetreten sind, bedeutet dies, dass Sie loslegen können.
Damit sind wir am Ende dieses Leitfadens angelangt. In diesem Leitfaden haben wir gezeigt, wie Sie certbot verwenden können um das Let’s Encrypt-Zertifikat zu installieren und zu konfigurieren auf einem Apache-Webserver, der auf einem CentOS 8 läuft System.