Problème d’installation SSL – “non concordance de la valeur clé” (mais elles correspondent?)

J’ai donc reçu un nouveau certificate public à installer sur un serveur (fichier .crt). Terminé. Redémarrez Apache – “FAILED”.

Message d’erreur:

[Tue Jan 11 12:51:37 2011] [error] Unable to configure RSA server private key [Tue Jan 11 12:51:37 2011] [error] SSL Library Error: 185073780 error:0B080074: x509 certificatee routines:X509_check_private_key:key values mismatch 

J’ai vérifié les valeurs clés:

 openssl rsa -noout -modulus -in server.key | openssl md5 openssl x509 -noout -modulus -in server.crt | openssl md5 

et ils correspondent.

J’ai vérifié les chemins dans mon fichier ssl.conf et ils dirigent vers les bons fichiers.

Si je réinstalle l’ancien fichier cert (expiré), apache démarre correctement, donc il n’aime certainement pas le nouveau.

C’est un QuickSSL GeoTrust, et il est venu avec un “intermédiaire.crt” que je suis supposé utiliser à la place du fichier “ca-bundle.crt” que j’utilisais avant

 SSLCertificateFile /etc/pki/tls/certs/www.domain.com.crt SSLCertificateKeyFile /etc/pki/tls/private/www.domain.com.key SSLCACertificateFile /etc/pki/tls/certs/intermediate.crt 

Des idées que je fais peut-être mal? Plus d’infos dont vous avez besoin?

Merci!

J’ai également rencontré la même erreur. Dans mon cas, j’ai dû fournir des certificates CA supplémentaires dans la chaîne de vérification. Et au lieu de fournir le certificate et la clé dans des fichiers séparés, je les ai combinés dans un fichier .pem.

Toutefois, lorsque vous faites cela, l’ordre de la clé et du certificate, plus le ou les intermédiaires, est important. Le bon ordre:

 your private key your certificatee (intermediate) CA certificatee lowest in the hierarchy other CA certificatees higher in the hierarchy... (intermediate) CA certificatee highest in the hierarchy 

Lors de la réémission de mon certificate Rapid Rapid (acheté via Namecheap) pour traiter le bogue Heartbeat, le nouveau certificate était toujours émis contre la clé privée utilisée pour la demande CSR précédente. Après environ la cinquième réédition, le couplage avec la clé privée utilisée lors de la quasortingème tentative de réémission a bien fonctionné.

Pour tous ceux qui ont du mal avec ça …

J’ai eu le même problème récemment sur l’un de mes serveurs CentOS 6.5 et c’était le moment où j’ai généré la clé et la RSE.

J’ai trois sites en cours d’exécution sur ce serveur dans virtualhosts, tous avec des adresses IP dédiées et chaque site possède son propre certificate SSL.

En changeant rapidement l’un des certificates, j’ai simplement suivi le guide des fournisseurs de certificates pour obtenir le CSR et l’installer dans Apache, et j’ai reçu l’ordre d’utiliser la commande suivante:

 openssl req -new -newkey rsa:2048 -nodes -keyout domain-name-here.key -out domain-name-here.csr 

Après avoir installé le nouveau certificate, je me trouvais également face à Apache qui ne démarrait pas et aux mêmes erreurs dans /var/log/httpd/ssl_error_log :

 [error] SSL Library Error: 185073780 error:0B080074:x509 certificatee routines:X509_check_private_key:key values mismatch [error] Unable to configure RSA server private key 

Maintenant, ce que j’aurais dû faire était de vérifier mes fichiers .bash_history , car je l’ai déjà fait plusieurs fois dans CentOS.

J’aurais dû exécuter ces deux commandes à la place:

 openssl genrsa -des3 -out domain-name-here.co.uk.key 2048 openssl req -new -key domain-name-here.co.uk.key -out domain-name-here.co.uk.csr 

Ceci a ensuite généré avec succès le CSR et le KEY, j’ai réappliqué pour le certificate en utilisant le nouveau CSR, puis appliqué le nouveau certificate et ajouté le nouveau fichier de clé et finalement Apache commencerait proprement.

Aussi, juste après une petite configuration, nous notons maintenant A + dans un test de laboratoire SSL.

assurez-vous que tous les fichiers cert sont encodés en utilisant ANSI , pas UTF-8 .

Pour moi, tous les tests ont dit: key, crt et csr correspondent, mais les journaux ont dit X509_check_private_key:key values mismatch jusqu’à ce que je voie qu’un des fichiers était encodé en UTF-8 .

Dans mon cas, j’avais deux sites et deux clés privées différentes:

 nginx: [emerg] SSL_CTX_use_PrivateKey_file("/some/path/server.key") failed (SSL: error:0B080074:x509 certificatee routines:X509_check_private_key:key values mismatch) 

Après avoir corrigé cela, le message d’erreur a changé pour mentionner /some/path/server.pem . Notez la clé privée différente, qui ne différait que par l’extension du fichier. J’ai eu deux sites différents cryptés avec des clés différentes (ce qui signifie que j’avais corrigé le premier site mais que je devais maintenant réparer le deuxième site). Veillez donc à lire attentivement le message d’erreur!

Nous avons également eu le problème avec NameCheap, le Cert émis correspondait à la CSR utilisée pour générer le CERT précédent. Nous leur avons fait savoir via leur page de support, et ils ont dit qu’ils étaient déjà au courant du problème.

Dynadot semble avoir les mêmes problèmes avec les certificates RapidSSL qu’ils réémettent. Je viens de recevoir un certificate non fonctionnel, qui a ensuite déclenché un autre problème avec Apache, lorsque cela a été corrigé, j’ai trouvé cette question et réponse ici pour le problème initial, merci pour l’information tout le monde. Je vais supprimer le certificate RapidSSL car j’ai des problèmes de compatibilité avec le client et en achète un nouveau à AlphaSSL.

Selon la FAQ sur le site Web d’Apache, le module et l’exposant public du certificate et de la clé doivent correspondre, ce qui constitue un contrôle valide.

http://httpd.apache.org/docs/2.0/ssl/ssl_faq.html#verify

Comme vous et d’autres avez déjà indiqué, travaillez avec l’émetteur de certificates

Le plus délicat dans mon cas est la configuration du SSLCACertificateFile . Une fois que le certificate a été délivré par notre société certifiée, nous avons reçu deux certificates supplémentaires: un certificate intermédiaire et un certificate racine. Lequel utiliser pour SSLCACertificateFile ? Tous les deux..

Voici à quoi ressemble ma chaîne de certificates:

entrer la description de l'image ici

Et pour le SSLCACertificateFile je dois concaténer digicert_sha2_high_assurance_server_ca.crt et digicert.crt dans un fichier dans l’ordre mentionné.