Je ne parviens pas à configurer SSL sur un serveur Debian 6.0 32 bits. Je suis relativement nouveau avec SSL, alors s'il vous plaît, supportez-moi. J'inclus autant d'informations que possible.
Remarque: le vrai nom de domaine a été modifié pour protéger l'identité et l'intégrité du serveur.
Le serveur utilise nginx. Il est configuré comme suit:
ssl_certificate /usr/local/nginx/priv/mysite.ca.chained.crt;
ssl_certificate_key /usr/local/nginx/priv/mysite.ca.key;
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_verify_depth 2;
J'ai enchaîné mon certificat en utilisant la méthode décrite ici
cat mysite.ca.crt bundle.crt > mysite.ca.chained.crt
où mysite.ca.crt
est le certificat qui m'a été fourni par l'autorité de signature et le bundle.crt
est le certificat de CA qui m'a également été envoyé par mon autorité de signature. Le problème est que je n’ai pas acheté le certificat SSL directement auprès de GlobalSign, mais plutôt auprès de mon fournisseur d’hébergement, Singlehop.
Le certificat est correctement validé sur Safari et Chrome, mais pas sur Firefox. Une recherche initiale a révélé qu'il pourrait s'agir d'un problème avec l'autorité de certification.
J'ai exploré la réponse à un question similaire , mais je n'ai pas trouvé de solution car je ne comprends pas vraiment à quoi sert chaque certificat.
J'ai utilisé s_client de openssl pour tester la connexion et j'ai reçu une sortie qui semble indiquer le même problème que la question similaire . L'erreur est la suivante:
depth=0 /OU=Domain Control Validated/CN=*.mysite.ca
verify error:num=20:unable to get local issuer certificate
verify return:1
depth=0 /OU=Domain Control Validated/CN=*.mysite.ca
verify error:num=27:certificate not trusted
verify return:1
Un détail complet de la réponse de openssl (avec les certificats et les informations inutiles tronquées) peut être trouvé ici .
Je vois aussi l'avertissement:
No client certificate CA names sent
Est-il possible que ce soit le problème? Comment puis-je m'assurer que nginx envoie ces noms de CA?
J'ai tenté de résoudre le problème en téléchargeant l'autorité de certification racine directement à partir de GlobalSign, mais j'ai reçu la même erreur. J'ai mis à jour les autorités de certification racines sur mon serveur Debian à l'aide de la commande update-ca-certificates
, mais rien n'a changé. Cela est probablement dû au fait que l'autorité de certification envoyée par mon fournisseur était correcte. Le certificat a donc été chaîné deux fois, ce qui n'aide en rien.
0 s:/OU=Domain Control Validated/CN=*.mysite.ca
i:/C=BE/O=GlobalSign nv-sa/CN=AlphaSSL CA - SHA256 - G2
1 s:/O=AlphaSSL/CN=AlphaSSL CA - G2
i:/C=BE/O=GlobalSign nv-sa/OU=Root CA/CN=GlobalSign Root CA
2 s:/C=BE/O=GlobalSign nv-sa/OU=Root CA/CN=GlobalSign Root CA
i:/C=BE/O=GlobalSign nv-sa/OU=Root CA/CN=GlobalSign Root CA
S'il vous plaît, laissez-moi savoir s'il y a quelque chose que je peux essayer, ou si tout est configuré de manière incorrecte.
jww a raison - vous faites référence au mauvais certificat intermédiaire.
Comme vous avez reçu un certificat SHA256, vous aurez besoin de l’intermédiaire SHA256. Vous pouvez le récupérer à partir d'ici: http://secure2.alphassl.com/cacert/gsalphasha2g2r1.crt