Je souhaite configurer une autorité de certification d'entreprise pour mon domaine. Je peux donc délivrer des certificats à diverses fins. Je voudrais suivre la meilleure pratique d'avoir une autorité de certification hors ligne en tant que racine et configurer mon autorité de certification d'entreprise en tant que subordonné. Mais il semble stupide de concéder sous licence une copie complète de Windows pour cette tâche.
Ce que j'espère pouvoir faire, c'est installer une distribution en direct sur un disque flash USB, puis installer openssl et configurer mon autorité de certification sur le lecteur flash. Lorsque je serai prêt à créer la clé racine / certificat, je déconnecterai l'ordinateur du réseau, puis je n'utiliserai plus jamais ce disque USB sur un ordinateur connecté au réseau.
Pourrai-je signer et créer correctement un certificat d'autorité de certification subordonnée pour une autorité de certification d'entreprise Windows, qui sera utilisable. Quelles options dois-je utiliser avec OpenSSL pour créer l'autorité de certification et signer correctement le certificat d'autorité de certification subordonnée.
J'ai essayé cherché sur le web, et c'était la seule chose que je pouvais trouver sur le sujet. Mais il est antérieur à 2008, et je ne suis pas tout à fait sûr que la personne ait réussi.
Réponses:
Ouais, ça marche très bien; une autorité de certification Windows n'a aucun scrupule à s'exécuter en tant que subordonné à une racine non Windows.
Testé avec une racine OpenSSL et un subordonné Windows 2008 R2 en mode Entreprise.
Quelques choses pour bien jouer avec ce que la MS CA attend dans la configuration OpenSSL:
Les emplacements AIA et CDP valides doivent s'appliquer au certificat racine, dans la section configurée par la
x509_extensions
propriété de la[req]
section pour la racine auto-signée. Quelque chose dans ce sens:Une configuration OpenSSL donnée n'autorise probablement pas les CA subordonnées par défaut. Modifiez cela pour les demandes signées (assurez-vous que cela n'est pas en place pour les demandes qui ne devraient pas être des autorités de certification, bien sûr). Ce sera dans la section configurée par la
x509_extensions
propriété de la[ca]
section:Nous allons donc faire une CA pour tester.
Faites votre racine:
Jouez avec votre configuration et créez les fichiers et répertoires nécessaires dans la
[ca]
section de votre configuration OpenSSL.Tout est prêt pour faire avancer le côté Microsoft; créer une autorité de certification subordonnée Windows avec signature manuelle.
Téléchargez la demande de certificat sur le serveur OpenSSL. Pendant que vous y êtes, téléchargez le certificat racine. Importez-le dans le magasin racine de confiance - de l'ordinateur, pas de votre utilisateur!
Émettez le certificat subordonné:
Si cela ne fonctionne pas, votre autorité de certification a probablement un problème avec la configuration - nouveau répertoire de certificats, fichier d'index, fichier série, etc. Vérifiez le message d'erreur.
Si c'est parti, alors c'est tout. Si ce n'est pas le cas, créez une CRL et placez-la dans le CDP que vous avez configuré ci-dessus; Je viens d'installer Apache et de le bloquer dans webroot:
Et placez votre certificat à l'emplacement AIA, s'il ne l'est pas déjà:
Téléchargez le certificat subordonné nouvellement émis et installez-le sur l'autorité de certification avec le composant logiciel enfichable MMC Autorité de certification. Il se plaindra de tout problème de confiance ou de validation, mais il n'a aucune objection morale à le prendre.
Résultat final; une autorité de certification Windows fonctionnelle sans se plaindre du composant logiciel enfichable PKI d'entreprise, avec un témoin
OpenSSL Generated Certificate
dans les attributs.la source
Je vois où vous voulez en venir, mais je ne pense pas qu'OpenSSL soit tout à fait l'outil pour le travail. Vous voudrez peut-être examiner les projets d'autorité de certification Open Source tels que EJBCA, qui sont plus axés sur cette fonctionnalité qu'OpenSSL et disposer d'une documentation spécifique que vous pouvez utiliser.
Je ne vois pas de raison pour laquelle le concept ne fonctionnerait pas, car tout ce que vous faites est de signer le certificat de l'autorité de certification subordonnée. Si vous payiez une autorité de certification publique pour le faire pour vous, vous ne sauriez pas nécessairement ou ne vous souciez pas de la saveur du serveur qu'ils utilisaient.
Tout ce dont vous avez besoin, c'est de:
Je ne peux pas dire que j'ai fait cela, mais je suis sûr que si vous suivez les documents pour générer un CSR à partir d'une boîte Windows, puis suivez vos documents CA pour générer un certificat .p7k à partir d'un CSR, alors ça devrait aller.
Soit dit en passant - je vous recommande de créer votre autorité de certification en tant que machine virtuelle pour un hyperviseur populaire tel que Hyper-V ou VMware, plutôt que comme un disque de démarrage, assurez-vous de le stocker de manière très sécurisée quelque part où votre successeur peut le trouver et le faire tourner périodiquement hors ligne pour vous assurer qu'il fonctionne, ou transférez-le vers de nouveaux médias / technologies. Une AC racine peut avoir une durée de vie de 10 ou 20 ans ...
la source