Je suis à perte de ce que j'essaierai d'autre pour déboguer cette question avec un certificat SSL Starfield Wildcard.
Le problème est que dans certains navigateurs (Safari ou le plus mis à jour chrome vous pouvez obtenir pour OS X 10.5.8 par exemple) Le certificat apparaît comme non cartonné, même sur le domaine racine.
Mon configuration de serveur/Info de fond:
Les lignes SSL.CONF sont essentiellement comme suit:
SSLCERTIVEFILE /PATH/TO/CERT/MYSITE.COM.CERT
[.____] SSLCertificateKeyFile /path/to/cert/mysite.key
[.____] SSLCERTICACHAINEFILE /PATH/TO/CERT/SF_BUNDLE.CRT
Tout a bien fonctionné bien jusqu'à l'autre nuit lorsque j'ai remarqué le problème dans OS X, je suppose que c'est plus de version de navigateur, mais n'a pu la répliquer que sur cette machine particulière.
Ce que j'ai essayé:
Que puis-je essayer à côté de remédier au problème de certificat non approuvé?
Faites-moi savoir s'il y a d'autres informations nécessaires pour aider à déboguer cette question. Merci d'avance!
Solution:
My problem ended up being that I had forgotten to add the SSLCertificateChainFile line to the virtual Host(s) in my httpd.conf and had only been editing those lines in ssl.conf instead, thanks for all the suggestions!
Deux choses que vous pouvez faire:
Comme l'erreur semble indiquer, vous avez quelque chose sur votre chaîne de certificats intermédiaire. Vous devriez vérifier où vous avez votre certificat et que vous avez obtenu le forfait intermédiaire correct.
Vous devriez vérifier le "hachage" et le "hachage d'émetteur" de chaque certificat de la chaîne avec le openssl x509 -noout -hash
et openssl x509 -noout -issuer_hash
commandes. Essayez ceci pour obtenir le hasch émetteur de votre certificat:
cat /path/to/cert/mysite.com.cert | openssl x509 -noout -issuer_hash
Ensuite, essayez de trouver un certificat avec ce hachage dans le sf_bundle.crt
fichier que vous avez spécifié comme SSLCertificateChainFile
. Vous devrez peut-être avoir à extraire les certificats (ou simplement à copier les coller à la commande):
cat first_cert_from_sf_bundle.crt | openssl x509 -noout -hash
Vérifiez tous. Si personne n'a ce hachage, alors quelque chose ne va pas là-bas. Continuez à faire ces chèques jusqu'à ce que vous trouviez un certificat qui a le même -hash
et -issuer_hash
. Ceci est votre certificat racine.
Si quelque chose manque, vous pouvez consulter les autres fichiers intermédiaires ici https://cert.starfieldtech.com/anonymous/repository.estam . Téléchargez-les et comparez leur -hash
contre la -issuer_hash
Où vous êtes coincé.
Si tout va bien, alors ...
J'ai vu cela aussi aider lorsque vous obtenez des erreurs d'impair de validation. Assurez-vous que votre chaîne intermédiaire répertorie uniquement les certificats requis et dans le bon ordre (Il est plus facile si c'est au format PEM). En d'autres termes, si votre chaîne est Your cert -> cert A -> cert B -> Starfield Root cert
. Essayez d'ajouter ces dans cette commande (vous pouvez sauter le premier et le dernier) afin que votre chaîne intermédiaire ressemble à ceci:
-----BEGIN CERTIFICATE-----
cert A
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
cert B
-----END CERTIFICATE-----
Personnellement, j'aime garder tous ces certificats (certificat personnel, suivi des intermédiaires, suivi du certificat racine) dans le même fichier. Ensuite, je spécifie simplement ce fichier comme le SSLCertificateFile
et SSLCertificateChainFile
.