Schritt-für-Schritt-Anleitung zum Austauschen eines SSL-Zertifikats (Eigene PKI)

Sollte Ihr selbsterstelltes Zertifikat ausgelaufen sein, so müssen Sie das austauschen.

Schritt 1: Neues Zertifikat auf dem App Server platzieren

Bevor Sie Änderungen an Ihrer nginx Konfiguration vornehmen, sollten Sie sicherstellen, dass Ihr neues Zertifikat auf Ihrem Server vorhanden ist. Laden Sie das Zertifikat auf den Server hoch und speichern Sie es an einem sicheren Ort.

Schritt 2: Öffnen Sie die nginx-Konfigurationsdatei

Um Ihre nginx-Konfigurationsdatei zu bearbeiten, öffnen Sie die Datei in einem Texteditor Ihrer Wahl. Sie können beispielsweise den Nano-Editor verwenden:

 

nano /etc/nginx/sites-available/ngs.conf

Schritt 3: Finden Sie die aktuellen Zertifikatseinträge

Innerhalb der Konfigurationsdatei suchen Sie nach den Zeilen, die Ihr derzeitiges SSL-Zertifikat und den privaten Schlüssel angeben. Diese sehen typischerweise wie folgt aus:

 

ssl_certificate /<Pfad>/fullchain.pem;
ssl_certificate_key /<Pfad>/privkey.pem;

Schritt 4: Tauschen Sie das Zertifikat aus

Ersetzen Sie die Pfade und gegebenenfalls die Dateinamen Ihrer Zertifikat-Dateien mit denen Ihres neuen Zertifikats. Achten Sie darauf, dass die vollständige Zertifikatskette (Webserver, Intermediate, Root-Zertifikat) im pem-Format hinterlegt ist.

Sollten Sie Ihr Zertifikat nur im PFX Format haben, können Sie dies wie folgt formatieren in pem.

Mit folgenden Befehl können Sie den privaten Schlüssel aus einer PFX-Datei in eine PEM-Datei extrahieren:
# openssl pkcs12 -in filename.pfx -nocerts -out key.pem

Nur das Zertifikat exportieren:
# openssl pkcs12 -in filename.pfx -clcerts -nokeys -out cert.pem

Entfernen des Kennworts aus dem extrahierten privaten Schlüssel:
# openssl rsa -in key.pem -out server.key

 

 

Denken Sie daran, dass Sie das für Ihre APP sowie API machen müssen!

Schritt 5: Speichern Sie die Konfiguration

Nachdem Sie die notwendigen Änderungen vorgenommen haben, speichern Sie die Konfigurationsdatei. In Nano können Sie dies mit CTRL+O zum Speichern und CTRL+X zum Beenden tun.

Schritt 6: Überprüfen Sie die Konfiguration

Bevor Sie nginx neu starten, ist es wichtig, die Konfiguration auf Fehler zu überprüfen. Dies können Sie mit folgendem Befehl tun:

nginx -t

Falls Fehler gemeldet werden, überprüfen Sie die Änderungen und korrigieren Sie diese entsprechend.

Schritt 7: Neustart von nginx

Wenn die Konfiguration korrekt ist und keine Fehler gefunden wurden, starten Sie nginx neu, um die Änderungen zu übernehmen:

service nginx restart

Schritt 8: Prüfen Sie die Funktionalität Ihrer Domain

Hierfür können Sie curl nutzen:

curl - v <IhreDomain>

Sollte sich auch das root Zertifikat geändert haben, müssen Sie dieses noch auf den Linux Servern trusten:

  1. Kopieren Sie das Root Zertifiakt nach /usr/local/share/ca-certificates/
  2. Updaten Sie den  CA Store: sudo update-ca-certificates