Nginx

So verschlüsseln Sie den Nginx-Server mit Let's Encrypt auf Ubuntu 20.04

So verschlüsseln Sie den Nginx-Server mit Let's Encrypt auf Ubuntu 20.04
Eine Zertifizierungsstelle namens Let's Encrypt demonstriert eine einfache Methode zum Abrufen und Installieren von Zertifikaten zum Verschlüsseln von HTTPS auf Webservern. Ein Software-Client namens Certbot wird verwendet, um die erforderlichen Schritte für diesen Prozess zu automatisieren. Die Installation von Zertifikaten auf Nginx und Apache erfolgt vollautomatisch. Ich zeige Ihnen, wie Sie Ihren Nginx-Server mit einem kostenlosen SSL-Zertifikat auf Ubuntu 20 . sichern.04.

Wir werden verschiedene Nginx-Server-Konfigurationsdateien verwenden, da dies dazu beiträgt, die häufigsten Fehler zu vermeiden und die Standardkonfigurationsdateien als Fallback-Option beizubehalten.

Schritt 1:

Aktualisieren Sie wie immer zuerst Ihre APT.

$ sudo apt-Update

Schritt 2:

Aktualisieren Sie jetzt Ihren APT.

$ sudo apt-Upgrade

Schritt 3:

Laden Sie jetzt ein Certbot-Softwaretool herunter und installieren Sie es, das Ihnen hilft, ein SSL-Zertifikat von Let's Encrypt zu erhalten. Führen Sie den folgenden Terminalbefehl aus, um Certbot über APT zu installieren.

$ sudo apt install certbot python3-certbot-nginx

Dadurch wird certbot installiert, aber Sie müssen noch die Ngnix-Konfigurationsdatei für die Installation des SSL-Zertifikats konfigurieren.

Schritt 4:

Sie sollten einen Serverblock einrichten, bevor Sie mit dem nächsten Schritt fortfahren. Dies ist ein notwendiger Schritt, wenn Sie mehrere Sites hosten hosting. Wir erstellen ein neues Verzeichnis im Pfad „/var/www“ und lassen das Standardverzeichnis unberührt. Führen Sie den folgenden Befehl aus, um ein neues Verzeichnis zu erstellen.

$ sudo mkdir -p /var/www/beispiel.com/html

Schritt 5:

Erteilen Sie nun über den folgenden Terminalbefehl die Eigentumsrechte für dieses Verzeichnis.

$ sudo chown -R $USER:$USER /var/www/example.com/html

Schritt 6:

Stellen Sie nun sicher, dass die Berechtigungen erteilt werden, indem Sie den folgenden Terminalbefehl ausführen.

$ sudo chmod -R 755 /var/www/example.com

Schritt 7:

Jetzt einen Index erstellen.html-Datei mit Ihrem bevorzugten Texteditor, ich verwende einen gedit-Texteditor.

$ sudo gedit /var/www/beispiel.com/html/index.html

Fügen Sie den folgenden Text in diese HTML-Datei ein.



Willkommen zum Beispiel.com!


Erfolg! Das Beispiel.com-Serverblock funktioniert!



Speichern und schließen Sie die Datei.

Schritt 8:

Erstellen Sie nun eine neue Konfigurationsdatei im Verzeichnis Sites-available mit Ihrem bevorzugten Texteditor, indem Sie den folgenden Befehl ausführen executing.

$ sudo gedit /etc/nginx/sites-available/example.com

Fügen Sie nun in dieser Konfigurationsdatei den folgenden Text für das neue Verzeichnis und den Domänennamen hinzu.

Server
hören 80;
zuhören [::]:80;
root /var/www/beispiel.com/html;
Indexindex.HTML-Index.htm-index.nginx-debian.html;
Beispiel für server_name.com www.Beispiel.com;
Lage /
try_files $uri $uri/ =404;

Speichern und schließen Sie diese Datei, um die Effekte zu übernehmen.

Schritt 9:

Aktivieren Sie nun das neue Verzeichnis für den Nginx-Start über den folgenden Terminalbefehl.

$ sudo ln -s /etc/nginx/verfügbare Seiten/Beispiel.com /etc/nginx/site-enabled/

Schritt 10:

Um Probleme mit dem Servernamen-Hash-Bucket-Speicher zu vermeiden, geben Sie einen einzelnen Wert in der folgenden Konfigurationsdatei an.

$ sudo gedit /etc/nginx/nginx.conf

Entfernen Sie nun das #-Zeichen aus der Option hash_bucket_size, um die Kommentierung aufzuheben. Speichern und schließen Sie die Datei.

Schritt 11:

Geben Sie nun die folgenden beiden Befehle ein, um Syntaxfehler zu entfernen und den Nginx-Server neu zu starten.

$ sudo nginx -t

$ sudo systemctl nginx neu starten

Schritt 12:

Jetzt müssen Sie die Nginx-Konfigurationsdateien überprüfen und bestätigen. Da certbot den richtigen Serverblock in der Nginx-Konfiguration finden muss, sucht es nach einem Servernamen, der mit der angeforderten Domain übereinstimmt matching. Um diese Konfigurationsdateien zu überprüfen, geben Sie den folgenden Terminalbefehl ein.

$ sudo nginx -t

Schritt 13:

Aktualisieren Sie jetzt Ihre UFW-Firewall-Regeln, um Nginx volle Berechtigungen zu gewähren. Wenn Sie frühere Regeln in Bezug auf den HTTP-Server haben, löschen Sie diese mit der Option UFW deny, bevor Sie den folgenden Befehl hinzufügen adding.

sudo ufw erlauben 'Nginx Full'

Schritt 14:

Jetzt kommen wir an den Punkt, an dem wir ein SSL-Zertifikat mit der certbot-Software installieren müssen. Führen Sie den folgenden Terminalbefehl aus.

$ sudo certbot --nginx -d Beispiel.com -d www.Beispiel.com

Wenn Sie certbot zum ersten Mal verwenden, werden Sie nach einer E-Mail-Adresse und einer Aufforderung zu den Allgemeinen Geschäftsbedingungen gefragt, stimmen Sie dem zu und Sie können mit dem nächsten Schritt fortfahren.

Schritt 15:

Jetzt werden Sie aufgefordert, Ihre HTTPS-Einstellungen zu konfigurieren, die erforderlichen Optionen auszuwählen und die Eingabetaste zu drücken, um fortzufahren. Certbot installiert alle erforderlichen Zertifikate und aktualisiert die Nginx-Dateien; Ihr Server wird mit einer Nachricht neu geladen, um Ihnen mitzuteilen, dass Ihr Prozess erfolgreich war.

Schritt 16:

Nachdem Sie nun die Zertifikate installiert haben, sollten Sie auch sicherstellen, dass diese Zertifikate nach einer bestimmten Zeit automatisch verlängert werden. Führen Sie die folgenden zwei Terminalbefehle aus, um die Fähigkeit dieses Prozesses sicherzustellen.

$ sudo systemctl status certbot.Timer

$ sudo certbot renew --dry-run

Fazit:

Bisher haben wir behandelt, wie man einen separaten Serverblock in Nginx erstellt, Zertifikate mit dem Certbot-Softwaretool von Let's Encrypt-Zertifizierungsstellenservern installiert und wie man einen Erneuerungsprozess für diese Zertifizierungen anwendet.

OpenTTD vs. Simutrans
Das Erstellen einer eigenen Transportsimulation kann Spaß machen, entspannend und äußerst verlockend sein. Deshalb sollten Sie so viele Spiele wie mög...
OpenTTD-Tutorial
OpenTTD ist eines der beliebtesten Wirtschaftssimulationsspiele auf dem Markt. In diesem Spiel musst du ein wunderbares Transportunternehmen aufbauen....
SuperTuxKart für Linux
SuperTuxKart ist ein großartiger Titel, der entwickelt wurde, um Ihnen das Mario Kart-Erlebnis kostenlos auf Ihrem Linux-System zu bieten. Es ist ziem...