Websites enthalten SSL/TLS -Verschlüsselung für seine Domain, um Besucher anzulocken. In diesem Artikel wird die Verwendung von CertBot -Dienstprogramm zur Ermittlung von TLS/SSL -Zertifikaten für NGINX erläutert.

Sichern nginx mit lass verschlüsseln auf ubuntu

Überblick

Jede Website, die Besucher anzieht, muss die TLS/SSL -Verschlüsselung für ihre Domain enthalten. SSL -kostenlose Zertifikate sorgen für eine sichere Verbindung zwischen Ihrem Webserver, um NGINX und Anwendungsbrowser zu verschlüsseln und zu sichern. Lassen Sie uns eine kostenlose, automatisierte und offene Zertifikatsbehörde vergrößern, mit der Sie einen solchen Schutz für Nginx SSL LetSencrypt einrichten können. Lassen Sie uns kostenlose SSL -Zertifikate verschlüsseln, die von allen großen Browsern vertrauen und für die nächsten 90 Tage ab dem Ausgabedatum gültig sind. In diesem Blog -Beitrag wird die einfachste Möglichkeit erläutert, NGINX auf Ubuntu 20.04 / 18.04 zu verschlüsseln und zu sichern, indem Nginx HTTPS -LetSencrypt -Zertifikate mit dem Nginx CertBot -Dienstprogramm erhalten und Ihre Zertifikate eingerichtet werden, um es automatisch zu erneuern. Lassen Sie uns starten und ein Setup letscrypt Ubuntu nginx -Konfigurationen.

  • Abhängigkeiten und Voraussetzungen
  • Installieren des Dienstprogramms für das Zertifikat
  • Bestätigung der Konfiguration von NGINX
  • HTTPS durch die Firewall zulassen
  • Erhalten Sie ein SSL -Zertifikat
  • Abschluss

Das Wichtigste zuerst: Abhängigkeiten und Voraussetzungen

Um diesem Artikel zu folgen, müssen Sie Abhängigkeiten und Voraussetzungen für die Installation von LetSencrypt Ubuntu Nginx -Dienstprogramme benötigen:

  • Ein sudo-fähiger Nicht-Root- oder Root-Benutzer auf lokalen/Remote-Maschinen.
  • Ein System, das Ubuntu 20.04 oder Ubuntu 18.04 ausführt
  • Zugriff auf einen Befehlszeilenterminal
  • Sudo- oder Root -Privilegien auf lokalen/entfernten Maschinen
  • Nginx installiert und einrichten
  • Ein registrierter Domainnamen, der auf öffentliche IP zeigt
  • Ein Serverblock, der für diesen Domänennamen konfiguriert ist
  • Firewall ist so konfiguriert, dass sie Verbindungen an den Ports 80 und 443 akzeptieren.

Schritt 1 - Installieren von Certbot

Der erste Schritt zur Sicherung von Nginx und zur Verschlüsselung von Nginx mit Let’s Encrypt besteht darin, Nginx CertBot vollständig durchzuführen und einfach zu verwenden, um Paket zum Abrufen und Erneuerungs-Let’s Encrypt-SSL-Zertifikaten auf Ihrem Server zu verwenden. Beginnen Sie dazu, zunächst ein Terminal für Ubuntu zu öffnen und das lokale Repository zu aktualisieren. Geben Sie y ein und geben Sie ein, wenn Sie aufgefordert werden.

sudo apt update
sudo apt install certbot python3-certbot-nginx

Überprüfen wir nun einige der NGINX Secure Configuration -Einstellungen.

Schritt 2 - Bestätigung der Konfiguration von NGINX

Wie im Abschnitt Abhängigkeiten und Voraussetzungen erläutert, sollten Sie bereits über eine registrierte Domäne verfügen, und Certbot muss in der Lage sein, den richtigen Nginx -Serverblock für diese Domäne zu finden, um SSL automatisch zu konfigurieren. In diesem Blog-Beitrag wird bei diesem Blog den Domain-Blog.Containerize.com und den Serverblock für Ihre Domain unter /etc/nginx/sites-available/blog.containerize.com verwendet. Öffnen Sie zur Bestätigung die Konfigurationsdatei für Ihre Domain mit Nano oder Ihrem bevorzugten Texteditor:

sudo nano /etc/nginx/sites-available/blog.containerize.com

Suchen Sie die vorhandene Server_Name-Direktivzeile in Datei /etc/nginx/sites-available/blog.containerize.com. Es sollte so aussehen:

...
server_name blog.containerize.com www.blog.containerize.com;
...

Überprüfen Sie nun die Syntax Ihrer NGINX -Konfigurationsdateien und laden Sie den NGINX -Server neu, um die neuen Konfigurationseinstellungen zu laden:

sudo nginx -t
sudo systemctl reload nginx

CertBot Utility finden jetzt die korrekte NGINX -Server -Blockanweisung, um NGINX zu sichern und automatisch zu aktualisieren. Lassen Sie uns im nächsten Schritt die Firewall aktualisieren, um den HTTPS -Verkehr zu ermöglichen.

Schritt 3 - HTTPS durch die Firewall zulassen

Wie in diesem Artikel empfohlen, müssen Sie die Einstellungen anpassen, um den HTTPS -Verkehr zu ermöglichen. Um sicherzustellen, dass Ihre Firewall aktiviert und aktiv ist, führen Sie den folgenden Befehl aus:

sudo ufw status

Die Ausgabe sollte Ihnen mitteilen, dass UFW aktiv ist, und geben Sie eine Liste der festgelegten Regeln. Es zeigt nur, dass HTTP -Verkehr dem Webserver erlaubt ist. Um verschlüsseltem Verkehr zuzulassen, können Sie entweder das Nginx HTTPS -Profil hinzufügen oder Nginx voll verwenden und die vorhandene Nginx HTTP -Regel löschen. Ermöglichen Sie den Nginx HTTPS -Verkehr, indem Sie den Befehl eingeben:

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

Überprüfen Sie die HTTPS -Regel, die den HTTPS -Verkehr durch Eingeben des Befehls UFW ermöglicht:

sudo ufw status

Lassen Sie uns als nächstes Certbot ausführen und unsere Zertifikate abrufen.

Schritt 4 - Erhalten Sie ein SSL -Zertifikat

Das NGINX -Plugin für CertBot kümmert sich um die Neukonfiguration von Nginx und lädt seine Konfiguration bei Bedarf neu. Daher müssen Sie nur Zertifikate mit dem Nginx -Plug -in generieren, indem Sie den folgenden Befehl ausführen:

sudo certbot --nginx -d blog.containerize.com -d www.blog.containerize.com

Wenn dies zum ersten Mal mit dem Dienstprogramm für das Certbot -Dienstprogramm ausgeführt wird, bittet CertBot Sie, Ihre HTTPS -Einstellungen zu konfigurieren. Sie werden aufgefordert, eine E -Mail -Adresse einzugeben und den Nutzungsbedingungen zuzustimmen. Nach der Eingabetaste wird die Konfiguration aktualisiert, und Nginx wird neu geladen, um die neuen Einstellungen abzuholen. Schließlich wird Certbot mit einer Nachricht angezeigt, die Ihnen zeigt, dass ein Zertifikat erfolgreich generiert wurde und wo Ihre Zertifikate gespeichert werden. Ihre Zertifikate werden heruntergeladen, installiert und mit Nginx SSL Certificate LetSencrypt -Konfigurationen geladen. Laden Sie Ihre Website mithilfe von https: // neu und beachten Sie den Sicherheitsindikator Ihres Browsers. Es sollte darauf hinweisen, dass die Site ordnungsgemäß gesichert ist, normalerweise mit einem Schlossymbol. Wenn Sie Ihren Server mit dem SSL Labs Server -Test testen, wird eine A -Note für Nginx und LetSencrypt erhalten. Lassen Sie uns mit dem Testen des Erneuerungsprozesses abschließen.

Schritt 5-Überprüfung von Certbot Auto-Neewal

Da Encrypt -Zertifikate alle neunzig (90) Tage ablaufen und Nginx SSL LetSencrypt Benutzer ermutigt, die Einrichtung und automatische Erneuerung des Cron -Jobs einzurichten. Öffnen Sie zunächst die Crontab -Konfigurationsdatei für den aktuellen Benutzer:

sudo crontab -e

Fügen Sie einen Cron -Job hinzu, der den Befehl certbot ausführt. Certbot erneuert nginx das Zertifikat, wenn er feststellt, dass das Zertifikat innerhalb von 30 Tagen ausfällt. Planen Sie es, täglich zu einer bestimmten Zeit zu laufen, z. B. 05:00 Uhr morgens.

sudo certbot renew --dry-run

Der Cron -Job sollte auch das –quiet -Attribut enthalten, wie im obigen Befehl. Dadurch wird das Nginx Renew -SSL -Zertifikat angewiesen, nach der Ausführung der Aufgabe keine Ausgabe einzuschließen. Aktivieren Sie die Erneuerung der automatischen Zertifikat. Sobald Sie den Cron -Job hinzugefügt haben, speichern Sie die Änderungen und beenden Sie die Datei.

Abschluss

In diesem Artikel haben wir gelernt, wie NGINX -Installation von LetSencrypt SSL -Zertifikat installiert wird. Wir haben SSL -Zertifikate für Ihre Domäne heruntergeladen und NGINX so konfiguriert, dass diese Zertifikate verwendet werden. Darüber hinaus sollten Sie CertBot ermöglicht haben, Zertifikate automatisch für SSL Nginx LetSencrypt zu erneuern. In unseren bevorstehenden Tutorials werden wir über interessanere Themen darüber diskutieren, wie Sie einen Webserver mit Standard -Sicherheitstechnologie sichern können, mit dem eine verschlüsselte Kommunikation zwischen einem Webbrowser und einem Webserver ermöglicht werden kann. Sie können sich uns auf Twitter, linkedIn und unserer Facebook -Seite anschließen. Mit welchem ​​kryptografischen Protokoll können Sie Kommunikationssicherheit über ein Computernetzwerk bereitstellen? Wenn Sie Fragen haben, bitte_ Kontakt aufnehmen.

Erkunden

Möglicherweise finden Sie die folgenden relevanten Links, um die Serverleistung zu überwachen und die Zuverlässigkeit und Sicherheit zu gewährleisten: