Wie kann ich ein Zertifikat in nginx importieren?
- Vorbereitung des Zertifikats und des privaten Schlüssels
- Speichern der Zertifikatsdateien auf dem Server
- Konfiguration von nginx für die Nutzung des SSL-Zertifikats
- Überprüfen der Konfiguration und Neustart von nginx
- Zusammenfassung
Das Importieren eines SSL-Zertifikats in nginx ist ein wichtiger Schritt, um eine sichere HTTPS-Verbindung für Ihre Webseite einzurichten. Im Gegensatz zu einigen anderen Webservern gibt es bei nginx keinen klassischen Import eines Zertifikats in eine Datenbank oder einen Zertifikatsstore. Stattdessen müssen Sie das Zertifikat und den zugehörigen privaten Schlüssel auf Ihrem Server ablegen und nginx so konfigurieren, dass diese Dateien verwendet werden.
Vorbereitung des Zertifikats und des privaten Schlüssels
Zunächst benötigen Sie das SSL-Zertifikat, das Sie von einer Zertifizierungsstelle (CA) erhalten haben, sowie den privaten Schlüssel, mit dem das Zertifikat verknüpft ist. Falls Ihre CA mehrere Zertifikate für eine Zertifikatskette bereitstellt (Root-Zertifikat, Zwischenzertifikate), sollten Sie diese in einer einzigen Datei zusammenführen, oft als Chain oder Bundle bezeichnet. Diese Datei sorgt dafür, dass Browser Ihre Seite korrekt als vertrauenswürdig einstufen.
Speichern der Zertifikatsdateien auf dem Server
Kopieren Sie das SSL-Zertifikat (z.B. example.com.crt) und den privaten Schlüssel (z.B. example.com.key) in ein sicheres Verzeichnis auf dem Server, das nginx lesen kann. Üblich sind Verzeichnisse wie /etc/nginx/ssl/ oder ähnliches. Die Berechtigungen der Schlüsseldatei sollten so gesetzt sein, dass nur root oder der Benutzer, unter dem nginx läuft, Zugriff hat, um die Sicherheit zu gewährleisten.
Konfiguration von nginx für die Nutzung des SSL-Zertifikats
Um nginx zu veranlassen, das Zertifikat zu verwenden, muss die Konfigurationsdatei Ihres Servers (meistens unter /etc/nginx/sites-available/ oder direkt in /etc/nginx/nginx.conf) angepasst werden. Innerhalb des relevanten server-Blocks für den HTTPS-Port (meist 443) geben Sie die Pfade zu den Zertifikat- und Schlüsseldateien mit den Direktiven ssl_certificate und ssl_certificate_key an. Beispiel:
server { listen 443 ssl; server_name example.com; ssl_certificate /etc/nginx/ssl/example.com.crt; ssl_certificate_key /etc/nginx/ssl/example.com.key; # weitere Einstellungen...}Diese Angaben sorgen dafür, dass nginx die SSL-Verbindung mit Ihrem Zertifikat aufbaut.
Überprüfen der Konfiguration und Neustart von nginx
Nachdem Sie die Konfiguration angepasst haben, sollten Sie die nginx-Konfiguration testen, um Syntaxfehler zu vermeiden. Dies gelingt mit dem Befehl nginx -t. Wenn der Test erfolgreich ist, starten Sie nginx neu oder laden die Konfiguration neu mit systemctl restart nginx oder nginx -s reload. Ihre Webseite sollte nun über HTTPS mit dem importierten Zertifikat erreichbar sein.
Zusammenfassung
Das Importieren eines Zertifikats in nginx besteht im Wesentlichen daraus, die Zertifikats- und Schlüsseldateien auf dem Server abzulegen und nginx entsprechend zu konfigurieren. Ein direkter Import in eine Zertifikatsverwaltung wie bei anderen Systemen findet nicht statt. Mit einer korrekt angepassten Konfiguration und sichergestellten Dateiberechtigungen steht einer gesicherten HTTPS-Verbindung nichts im Wege.
