Problèmes d'installation du certificat SSL sur nginx avec une clé intermédiaire


11

J'essaie d'installer un certificat SSL sur mon serveur Ubuntu. J'ai acheté le certificat auprès de mon autorité de certification et j'ai téléchargé le certificat lui-même et un certificat intermédiaire. Ainsi:

mon certificat: mydomain.crt
certificat intermédiaire: GandiStandardSSLCA.pem

J'ai aussi (fait en utilisant openssl)

ma clé privée (?): mydomain.key
et demande de signature: mydomain.csr

J'ai téléchargé tous ces fichiers sur mon serveur et j'ai suivi un guide pour combiner mon certificat avec l'intermédiaire:

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

J'ajoute ensuite ce qui suit à la configuration de mon vhost:

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

Mais quand je vais redémarrer nginx, j'obtiens cette erreur:

* Redémarrage de nginx
* Arrêt de nginx nginx [OK]
nginx: [Emerg] SSL_CTX_use_PrivateKey_file ("/ etc / nginx / ssl / mydomain.key") a échoué (SSL: erreur: 0B080074: routines de certificats x509: X509_check_private_key: valeurs de clé incorrectes) échec du test du fichier de configuration /etc/nginx/nginx.conf

Des idées pourquoi et comment résoudre?


que dit "openssl verify -untrusted ca-bundle mydomain-bundle.crt"?
Danila Ladner

c'est quoi ca-bundle?
harryg

Réponses:


17

Votre liste de clés est-elle correcte:

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

Faites le module de la clé et le cert match:

openssl x509  -in mydomain.crt -modulus 

openssl rsa  -in qa.server.key  -modulus

Ces chiffres doivent correspondre.


oui, les listes de clés sont correctes et les modules correspondent. Je ne pouvais que m'inscrire en tant que root. Serait-ce un problème de propriété
Harry

en supposant que qa.server.keyc'est ma clé privée
harryg

Notez que l'ordre de concaténation des certificats (cert SLL et intermédiaire) est crucial. La réponse @davey m'a aidé à comprendre que j'avais un crt agrégé incorrect.
jeromes

Excellent. J'utilisais le mauvais fichier pour ssl_certificate. Les commandes modulas m'ont aidé à comprendre que c'était le problème. Génie!
Ralph

S'ils ne correspondent pas? alors quoi ...
Zach Smith
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.