Client SSL Auto-Signé CA ne fonctionne pas
J'ai été aux prises avec un SSL problème pendant plus de 1 mois.
Nous avons utilisé openssl pour générer notre propre autorité de certification, certificats serveur et client. Nous avons également
activer "SSLrequire" sur le serveur web Apache (dans le htaccess cela peut-être mal), ce qui signifie que toute personne qui cherche à se connecter via https sur le
serveur doit présenter un certificat valide
Les étapes sont comme suit;
- générer la clé de l'AC
- générer du CA de la RSE
- signer le CA de la RSE avec la Clé de l'AC
donc, nous avons notre propre autorité de certification qui est utilisé pour signer notre certificats serveur et client.
prochaine étape
- générer la clé du serveur
- générer des serveur de la RSE
- signe serveur de la RSE avec CA Touche
Donc, nous avons notre certificat de serveur & la clé privée du serveur qui nous avons installé avec succès sur le serveur
Ensuite, nous
- générer des clés de client
- générer client RSE
- signer client de la RSE avec CA Touche
Nous avons ensuite distribuer le certificat du client pour nos utilisateurs avec le certificat de la CA.
Les deux ont été installer dans leurs navigateurs.
Lorsque vous tentez de vous connecter, nous avons obtenu le "Peer ne reconnaît pas et la confiance de l'autorité de certification ayant émis le certificat.
"erreur.
Nous avons identifié le problème étant que l'auto-signé certificat d'autorité de certification n'a pas été installé sur le serveur. Normalement, le serveur
présente une liste d'autorité de certification de confiance à l'appareil tente de se connecter à elle et de l'appareil devra envoyer un certificat
qui a été signée par l'un des le CAs " le serveur a présenté. Mais depuis notre auto-signé certificat d'autorité de certification
n'a pas été installé sur le serveur, le navigateur pourrait présenter un certificat qui serait acceptable par le
serveur.
Nous sommes donc allés sur l'installation de la CA cert sur le serveur - panneau de contrôle le pack hsphere.
Nous avons pris le contenu du certificat de la ca et copié dans le "Certificat de l'Autorité de Fichier" textarea sur le serveur
et le serveur n'accepte pas de se plaindre à chaque fois que "Echec de la mise à jour de configuration SSL Différentes clés et des certificats"
Le certificat d'AC a été signé par elle-même comment le serveur de dire que le certificat et la clé sont différents.
Nous avons aussi essayé de copier le contenu du fichier de certificat CA et la clé de l'AC fichier dans le "Certificat de l'Autorité de Fichier" textarea, mais qui ne fonctionne pas.
Comme je l'ai dit, nous avons été aux prises avec plus d'un mois. Si quelqu'un peut aider ce serait vraiment apprécié.
Si nous devons payer pour le service, s'il vous plaît laissez-nous savoir.
Merci d'avance.
OriginalL'auteur icarus | 2010-08-13
Vous devez vous connecter pour publier un commentaire.
(Peut-être https://serverfault.com/ serait un meilleur endroit pour cette question.)
Voici quelques options que vous pouvez utiliser dans Apache Httpd configuration (je ne suis pas sûr de savoir comment elle est mappée à votre panneau de configuration).
SSLCertificateFile
etSSLCertificateKeyFile
sont les exigences de base pour activer SSL sur votre serveur.Parce que vous voulez que le client d'authentification par certificat, vous devez configurer l'un des
SSLCACertificatePath
(pour un répertoire) ouSSLCACertificateFile
(pour un fichier) pour dire que CAs vous voulez de confiance, si vous ajouter certificat d'autorité de certification. Ceux-ci devraient être des fichiers dans le format PEM. Tout certificat, il sera considéré comme digne de confiance (bien qu'il ait besoin de l'AC de base de la contrainte, je ne me souviens pas, c'est tout à fait standard, si vous avez généré un certificat CA racine vous-même de toute façon).En plus de cela, vous pouvez mettre les certificats dans un
SSLCADNRequestFile
. Cela ne devrait pas être nécessaire, car il est rempli automatiquement à partir de laSSLCACertificatePath
ouSSLCACertificateFile
certificat de directives, mais si vous voulez plus de contrôle sur la liste des autorités de certification du serveur de la publicité, il peut l'accepter, c'est là pour le faire. Juste pour préciser, ce n'est pas ce que gère la confiance dans les certificats client, mais juste ce que le serveur de la publicité, il peut de confiance, si vous avez encore besoin deSSLCACertificatePath
ouSSLCACertificateFile
. Peut-être que vous "Autorité de certification Fichier" option dans votre panneau de configuration des contrôles et non pas l'une des deux autres options.Une façon de déboguer c'est de faire celui de la ligne de commande:
Cela devrait liste de la chaîne de certificats de vous présenter en premier (il serait bon pour elle de présenter l'intégralité de la chaîne à l'autorité de certification, comme certains clients semblent avoir besoin de cela, parfois, comme je me souviens bien). Ensuite, il doit énumérer les CAs, il est prêt à accepter pour le client, de l'authentification par certificat, ou Pas de certificat client noms de CA envoyé autrement (dans ce cas, il y a un problème avec l'une des directives mentionnées ci-dessus). Cela vous donnera au moins une indication de la façon dont
SSLCADNRequestFile
ouSSLCACertificatePath
/SSLCACertificateFile
ont été configurés (même si c'est les deux derniers).OriginalL'auteur Bruno