22.05.2023

So installieren Sie ein SSL-Zertifikat auf Nginx für Ubuntu 20.04

Um die HTTPUm das S-Protokoll auf einer Website zu verwenden, müssen Sie das TLS/SSL-Zertifikat erwerben und konfigurieren Nginx. Bei einer Vielzahl von Diensten können Sie gegen Geld ein Zertifikat von einer vertrauenswürdigen Zertifizierungsstelle erhalten. Die kostenlose Version ist dank der möglich Der Let's Encrypt-Dienst wird hier in Schritt 3 beschrieben.Sie müssen auch Leistung erbringen basic Nginx Konfiguration. Wenn Sie selbstsignierte Zertifikate verwenden, zeigt der Browser bei der Sicherheitsüberprüfung eine Fehlermeldung an.

Im Serverspace Sie uns Erstellen Sie einen Server mit bereits installierter App“Nginx".

Grundlegende SSL-Konfiguration

Wenn Sie ein SSL-Zertifikat erworben haben, müssen Sie aus dem erhaltenen öffentlichen Schlüssel und der Kette der Zertifizierungszentren eine vollständige Kette Ihres Zertifikats erstellen. Platzieren Sie dazu den Inhalt der Kettendatei am Ende der öffentlichen Schlüsseldatei. Dateien können das haben .pem or .crt Erweiterung.

cat cert.pem chain.pem > fullchain.pem

Kopieren Sie nun die Dateien auf Ihren Server. Eine gute Wahl besteht darin, den privaten Schlüssel (.key oder .pem) zu hinterlegen /etc/ssl/private/ Ordner und die fullchain.pem zu den /etc/ssl/certs/.

Öffnen Sie nun die Konfigurationsdatei Ihres virtuellen Hosts (/etc/nginx/sites-available/domain-name.com) und fügen Sie die folgenden Zeilen hinzu:

server {
hören 443 ssl;
Servername Domänenname.com; # Der Domainname Ihrer Website
ssl_certificate /etc/ssl/certs/fullchain.pem; # Pfad zur vollständigen Kette Ihres SSL-Zertifikats
ssl_certificate_key /etc/ssl/private/privkey.pem; # Pfad zum privaten Schlüssel Ihres SSL-Zertifikats
}

Vergiss nicht, die einzustellen Wurzel und Index parameter in diesem Abschnitt, genau wie in der HTTP .
Wiederaufnahme Nginx.

systemctl neu starten nginx

Jetzt können Sie Ihr SSL-Zertifikat und Ihre Konfiguration mit überprüfen https://www.ssllabs.com/ssltest/ und fahren Sie mit Einstellungen fort, die nicht der Klasse A entsprechen.

Deaktivieren veralteter Protokolle und Aktivieren der Priorität für Serverchiffren

Geben Sie die Verwendung der TLS-Versionen 1.2 und 1.3 sowie die Priorität für Serverchiffren an. Öffne das / Etc /nginx/nginx.conf Datei und korrigieren oder fügen Sie die folgenden Zeilen hinzu http .

http {
...
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_chiffren an;
...
}

Wiederaufnahme Nginx.

systemctl neu starten nginx

Umleitung von HTTP zu HTTPS

So konfigurieren Sie die Site so, dass sie nur über funktioniert HTTPS Sie müssen eine Weiterleitung hinzufügen HTTP. Öffnen Sie die Konfigurationsdatei Ihres virtuellen Hosts (/etc/nginx/sites-available/domain-name.com), löschen Sie die HTTP Abschnitt:

server {
höre 80;
...
}

Fügen Sie nun ein neues mit folgendem Schritt hinzurameter:

server {
höre 80;
Servername Domänenname.com; # Der Domainname Ihrer Website
301 zurückgeben https://$host$request_uri; # Weiterleiten
}

Starten Sie jetzt neu Nginx.

systemctl neu starten nginx