Was ist ein SSL-Zertifikat?
Im Laufe der Zeit haben Fälle von internetbezogenen Sicherheitsverletzungen zugenommen, da Hacker rund um die Uhr daran arbeiten, Benutzerdaten für böswillige Zwecke zu stehlen. Ein SSL-Zertifikat ist ein digitales Zertifikat, das auf Website-Servern installiert wird, hauptsächlich zum Verschlüsseln von Daten, die zwischen dem Benutzerbrowser und dem Server gesendet werden, sodass nur der beabsichtigte Empfänger darauf zugreift. Dies ist von entscheidender Bedeutung, da Informationen ohne Verschlüsselung als reine Textdaten gesendet werden und von Hackern leicht abgefangen werden können.
Aus diesem Grund verschlüsseln die meisten E-Commerce-Shops und Online-Geldzahlungsplattformen wie PayPal ihre Websites. Das SSL-Zertifikat ermöglicht auch die Authentifizierung und stellt sicher, dass Informationen an den richtigen Server und nicht an einen Hacker gesendet werden.
Google mag sichere Websites
Das SSL-Zertifikat trägt dazu bei, dass Ihre Website bei Google höher eingestuft wird. Laut der Ankündigung von Google werden SSL-verschlüsselte Seiten höher gerankt als solche ohne und die als unsicher gelten. Eine gesicherte Seite wird durch ein Vorhängeschloss in der URL-Leiste und der URL mit vorangestelltem https statt HTTP symbolisiert. Wenn Ihren Websites die sichere HTTPS-Erweiterung fehlt, zeigt Google die Website-URL als „Nicht sicher“ an, was sich negativ auf
Ihre Website-Rankings auswirken kann.
Nginx mit Let’s Encrypt SSL-Zertifizierung auf Ubunutu
In diesem Artikel werden wir uns ansehen, wie man Nginx mit Let’s encrypt SSL unter Ubuntu 18.04 sichert. Let’s Encrypt ist ein kostenloses und automatisiertes SSL, das von der Let’s encrypt Authority bereitgestellt wird. Bis 2018 hat Let’s Encrypt über 150 Millionen Websites gesichert.
Fangen wir an und sehen, wie wir Nginx mit Let’s encrypt SSL auf Ubuntu 18.04 sichern können.
Voraussetzungen
Stellen Sie zunächst sicher, dass Sie über Folgendes verfügen:
- Serverinstanz von Ubuntu-Server 18.04 mit SSH-Zugriff
- Eine Nicht-Root-Nutzung mit sudo-Berechtigungen
- Ein vollständig qualifizierter Domänenname (FQDN) mit einem A-Eintrag, der auf die IP-Adresse des Servers verweist
In diesem Beispiel verwenden wir den Domänennamen crazytechgeek.info die auf einen VPS mit der IP-Adresse 18.191.46.130 verweist .
Schritt 1. Nginx installieren
Als erstes muss der Nginx-Webserver installiert werden. Aber aktualisieren Sie zuerst Ihr System, indem Sie sich als Nicht-Root-Benutzer anmelden und den folgenden Befehl ausführen.
$ sudo apt update
Als nächstes installieren Sie Nginx mit dem folgenden Befehl.
$ sudo apt install nginx
Ausgabe :
Überprüfen Sie nach der Installation, ob Nginx ausgeführt wird, indem Sie den folgenden Befehl ausführen.
$ sudo systemctl status nginx
Ausgabe :
Groß! Nachdem wir unseren Webserver installiert haben, fahren wir mit dem nächsten Schritt fort.
Schritt 2. Certbot installieren
Lassen Sie uns nun Certbot auf unserem Server installieren. In diesem Beispiel verwenden wir das Ubuntu-Software-Repository, das alle aktualisierten Dateien enthält. Um das Certbot-Repository hinzuzufügen, führen Sie den folgenden Befehl aus.
$ sudo add-apt-repository ppa:certbot/certbot
Ausgabe :
Installieren von Certbot
Um die System-Repositories über die vorgenommenen Änderungen zu informieren, aktualisieren Sie bitte das System.
$ sudo apt update
Schritt 3. Certbot Nginx-Paket installieren
Wir werden dann das Certbot Nginx-Paket installieren. Führen Sie dazu den folgenden Befehl aus:
$ sudo apt-get install python-certbot-nginx
Ausgabe
Schritt 4. Aktualisieren der Firewall, um HTTPS-Datenverkehr zuzulassen
Wir müssen HTTPS-Verkehr durch die Firewall zulassen, damit SSL über Port 443 funktioniert. Lassen Sie uns zuerst den Status der Firewall überprüfen.
$ sudo ufw status
Ausgabe
Bevor wir die Firewall aktivieren, lassen Sie uns zunächst „Nginx Full“ zulassen, das sich sowohl um HTTP als auch um HTTPS kümmert.
$ sudo ufw allow 'Nginx Full'
Ausgabe
Lassen Sie uns nun die ufw-Firewall aktivieren. Drücken Sie „y“, wenn Sie dazu aufgefordert werden.
$ sudo ufw enable
Ausgabe
Lassen Sie uns überprüfen, ob die Regeln zur Firewall hinzugefügt wurden.
$ sudo ufw status
Ausgabe
Ufw-Status aktiv
Schritt 5. SSL-Zertifikat generieren
Der letzte Teil ist die Generierung des Let’s Encrypt SSL-Zertifikats. Verwenden Sie dazu die folgende Syntax.
$ sudo certbot --nginx -d example.com -d www.example.com
Dadurch wird das SSL-Zertifikat generiert, das sowohl für example.com als auch für www.example.com gültig ist.
In unserem Fall haben wir:
$ sudo certbot --nginx -d crazytechgeek.info -d www.crazytechgeek.info
Ausgabe
Wenn Sie Certbot zum ersten Mal ausführen, werden Sie zunächst aufgefordert, eine E-Mail-Adresse einzugeben.
Die Kommunikation wird dann mit dem Let’s Encrypt-Server initiiert und versucht zu überprüfen, ob Sie die Domain kontrollieren, für die Sie ein Zertifikat anfordern.
Nächste. Drücken Sie A, um den Nutzungsbedingungen zuzustimmen.
Als nächstes werden Sie gefragt, ob Sie möchten, dass Ihre E-Mail-Adresse mit EFF geteilt wird. Hier können Sie sich entweder an- oder abmelden.
Beim nächsten Schritt kommt es auf alles an. Dies ist der Punkt, an dem Sie HTTP-Anfragen zu HTTPS umleiten müssen. Wählen Sie die zweite Option.
Wenn alles geklappt hat, erhalten Sie eine Nachricht, die bestätigt, dass alles geklappt hat.
Wunderbar! Sie haben Let’s encrypt SSL erfolgreich auf Ihrem Nginx-Webserver installiert.
Um dies zu überprüfen, gehen Sie im Browser zur Adresse Ihres Servers und aktualisieren Sie.
Beachten Sie, dass sich die URL am Anfang von HTTP auf HTTPS geändert hat. Um weitere Informationen zum SSL-Zertifikat anzuzeigen, klicken Sie auf das Vorhängeschloss-Symbol und wählen Sie die Option „Zertifikat“.
Ausgabe
SSL-Zertifikat von Let’s Encrypt erneuern
Die Gültigkeit des Let’s encrypt-Zertifikats beträgt 90 Tage. Dies bedeutet, dass die Verlängerung nach 3 Monaten erfolgt. Die Erneuerung für die Automatisierung erfolgt automatisch durch Let’s encrypt. Um den Erneuerungsprozess zu testen, führen Sie wie gezeigt einen Probelauf mit Certbot durch.
sudo certbot renew --dry-run
Wenn es dann keine Fehler gibt, ist alles nach Plan gelaufen und bei Bedarf erfolgt die automatische Verlängerung von. Alle Nachrichten über den CA-Ablauf werden an die während der Konfiguration angegebene E-Mail-Adresse gesendet.