Probleme bei der Installation des SSL-Zertifikats unter Nginx mit Zwischenschlüssel

11

Ich versuche, ein SSL-Zertifikat auf meinem Ubuntu-Server zu installieren. Ich habe das Zertifikat von meiner Zertifizierungsstelle gekauft und das Zertifikat selbst und ein Zwischenzertifikat heruntergeladen. Als so:

mein Zertifikat: mydomain.crt
Zwischenzertifikat: GandiStandardSSLCA.pem

Ich habe auch (gemacht mit openssl)

Mein privater Schlüssel (?): mydomain.key
und Signaturanfrage: mydomain.csr

Ich habe alle diese Dateien auf meinen Server hochgeladen und eine Anleitung befolgt, um mein Zertifikat mit dem Zwischenprodukt zu kombinieren:

cat mydomain.crt GandiStandardSSLCA.pem > mydomain-bundle.crt

Ich füge dann Folgendes zur Konfiguration meines vhost hinzu:

listen   443 ssl;
ssl_certificate       /etc/nginx/ssl/mydomain-bundle.crt;
ssl_certificate_key   /etc/nginx/ssl/mydomain.key;

Aber wenn ich nginx neu starte, erhalte ich folgende Fehlermeldung:

* Neustart von nginx
* Stoppen von nginx nginx [OK]
nginx: [emerg] SSL_CTX_use_PrivateKey_file ("/ etc / nginx / ssl / mydomain.key") fehlgeschlagen (SSL: Fehler: 0B080074: x509-Zertifikatroutinen: X509_check_private_key: Konfigurationsdatei /etc/nginx/nginx.conf Test fehlgeschlagen

Irgendwelche Ideen warum und wie zu lösen?

Harryg
quelle
Was sagt "openssl verify -untrusted ca-bundle mydomain-bundle.crt"?
Danila Ladner
was ist ca-bundle?
Harryg

Antworten:

17

Ist Ihre Schlüsselliste in Ordnung:

openssl rsa -in /etc/nginx/ssl/mydomain.key

Stimmen der Modul des Schlüssels und das Zertifikat überein:

openssl x509  -in mydomain.crt -modulus 

openssl rsa  -in qa.server.key  -modulus

Diese Zahlen müssen übereinstimmen.

Davey
quelle
Ja, die Schlüssellisten sind in Ordnung und die Module stimmen überein. Ich konnte mich allerdings nur als root eintragen. Könnte es ein Eigentumsproblem sein
Harryg
Angenommen, es qa.server.keyist mein privater Schlüssel
Harryg
Beachten Sie, dass die Reihenfolge der Verkettung der Zertifikate (SLL-Zertifikat und Intermediate) von entscheidender Bedeutung ist. @ Davey Antwort half mir herauszufinden, dass ich ein falsches aggregiertes CRT hatte.
Jeromes
Ausgezeichnet. Ich habe die falsche Datei für ssl_certificate verwendet. Die Befehle modulas halfen mir herauszufinden, dass dies das Problem war. Genius!
Ralph
Wenn sie nicht zusammenpassen? dann was ...
Zach Smith