Comment les créer.fichier pfx du certificat et de la clé privée?

il me faut .fichier pfx pour installer https sur le site web sur IIS.

j'ai deux fichiers séparés: certificat (.cer ou pem) et clé privée (.crt) mais IIS n'accepte que .les fichiers pfx.

j'ai évidemment installé le certificat et il est disponible dans le gestionnaire de certificats (mmc) mais quand je sélectionne L'Assistant D'exportation de certificats Je ne peux pas sélectionner le format PFX (il est grisé)

Existe-t-il des outils pour faire cela ou C# exemples de faire cela programtically?

260
demandé sur jww 2011-06-10 18:38:19

14 réponses

vous devrez utiliser openssl.

openssl pkcs12 -export -out domain.name.pfx -inkey domain.name.key -in domain.name.crt

Le fichier est simplement un fichier texte avec votre clé privée.

si vous avez un CA racine et des certs intermédiaires, alors les inclure aussi en utilisant plusieurs -in params

openssl pkcs12 -export -out domain.name.pfx -inkey domain.name.key -in domain.name.crt -in intermediate.crt -in rootca.crt

vous pouvez installer openssl d'ici: openssl

373
répondu jdehlin 2018-05-30 08:40:13

L'utilitaire en ligne de commande de Microsoft Pvk2Pfx semble avoir la fonctionnalité dont vous avez besoin:

Pvk2Pfx (Pvk2Pfx.exe) est un outil en ligne de commande qui copie l'information à clé publique et à clé privée contenue dans .spc,.cer, et .pvk à un échange D'informations personnelles (.pfx) fichier.

http://msdn.microsoft.com/en-us/library/windows/hardware/ff550672 (v=vs 85).aspx

Note: C # solution, alors vous pouvez envisager d'utiliser le http://www.bouncycastle.org / api.

34
répondu Seymour 2014-10-29 16:09:14

si vous cherchez une interface graphique Windows, consultez DigiCert. J'ai utilisé ça et c'était assez simple.

sous L'onglet SSL, j'ai D'abord importé le certificat. Ensuite, une fois que j'ai sélectionné le certificat, j'ai pu exporter en PFX, avec et sans fichier-clé.

https://www.digicert.com/util

25
répondu joelnet 2014-08-14 23:11:08

vous n'avez pas besoin d'openssl ou makecert ou de tout cela. Vous n'avez pas non plus besoin de la clé personnelle qui vous est remise par votre AC. Je peux presque garantir que le problème est que vous vous attendez à être en mesure d'utiliser les clés et les fichiers cer fournis par votre AC, mais ils ne sont pas basés sur "la voie de L'IIS". Je suis tellement fatigué de voir mauvais et difficile info ici que j'ai décidé de bloguer le sujet et la solution. Quand vous réalisez ce qui se passe et voyez comme c'est facile, vous voudrez me serrer dans vos bras:)

SSL Cert pour IIS avec PFX une fois pour toutes - et SSL IIS Expliqué - http://rainabba.blogspot.com/2014/03/ssl-certs-for-iis-with-pfx-once-and-for.html

utiliser IIS" Server Certificates "UI pour" générer une requête de certificat " (les détails de cette requête sont hors de la portée de cet article mais ces détails sont critiques). Ceci vous donnera un CSR préparé pour IIS. Vous remettez ensuite ce CSR à votre AC et vous demandez un certificat. Ensuite, vous prenez le fichier CER/CRT qu'ils vous donnent, retournez à IIS, "Complete Certificate Request" au même endroit que vous avez généré la demande. Il peut demander un .CER et toi avez peut-être un .CRT. Ils sont la même chose. Il suffit de changer l'extension ou d'utiliser le . "151980920 l'extension de la liste déroulante pour sélectionner votre .CRT. Donnez maintenant un "nom Amical" (*.yourdomain.com, yourdomain.com, foo.yourdomain.com, etc..) C'EST IMPORTANT! Cela doit correspondre à ce pour quoi vous avez créé le REA et à ce que votre AC a fourni. vous. Si vous avez demandé un joker, votre AC doit avoir approuvé et généré un joker et vous devez utiliser le même. Si votre Rea a été généré pour foo.yourdomain.com, vous devez fournir la même chose à cette étape.

20
répondu rainabba 2016-12-05 14:14:14

j'ai un lien avec vos exigences. combinent les fichiers CRT et KEY dans un PFX avec OpenSSL

extraits du lien ci-dessus:

tout D'abord, nous avons besoin d'extraire le certificat de CA racine à partir de l'existant .fichier crt, parce qu'on en a besoin plus tard. Alors ouvrez l' .crt et cliquez sur sur l'onglet Chemin d'accès de Certification.

cliquez sur le certificat le plus élevé (dans ce cas VeriSign) et hit View Certificat. Sélectionnez l'onglet Détails et cliquez sur Copier dans le fichier ...

sélectionner Base-64 encoded X. 509 (.CER) Enregistrer le certificat en tant que rootca.cer ou quelque chose de similaire. Le placer dans le même dossier que les autres fichiers.

L'a renommé de rootca.cer à rootca.crt Maintenant, nous devrions avoir 3 fichiers notre dossier à partir duquel nous pouvons créer un fichier PFX.

C'est ici que nous avons besoin D'OpenSSL. Nous pouvons soit le télécharger et l'installer sur Windows , ou simplement ouvrir le terminal sur OSX.

EDIT:

  1. il y a un lien de support avec des informations étape par étape sur la façon d'installer le certificat.

  2. après avoir installé avec succès, exporter le certificat, choisir Format .pfx , inclure la clé privée.

    Note importante: : pour exporter le certificat en .format pfx vous devez suivre les étapes sur la même machine à partir de laquelle vous avez demandé le certificat .

  3. le fichier importé peut être téléchargé sur le serveur.

6
répondu sudhAnsu63 2017-05-23 11:54:57

vous devez utiliser l'outil makecert.

ouvrez une invite de commande en tant qu'administrateur et tapez ce qui suit:

makecert -sky exchange -r -n "CN=<CertificateName>" -pe -a sha1 -len 2048 -ss My "<CertificateName>.cer"

<CertifcateName> = le nom de votre certificat à créer.

ensuite, vous pouvez ouvrir le gestionnaire de certificats snap-in pour la console de gestion en tapant certmgr.msc dans le menu Démarrer, cliquez sur personnel > certificats > et votre cert devrait être disponible.

voici un article.

https://azure.microsoft.com/documentation/articles/cloud-services-certs-create /

6
répondu BentOnCoding 2015-09-22 16:13:24

https://msdn.microsoft.com/en-us/library/ff699202.aspx

((les citations pertinentes de l'article sont ci-dessous ))

Ensuite, vous devez créer la .le fichier pfx que vous utiliserez pour signer vos déploiements. Ouvrez une fenêtre d'Invite de Commande et tapez la commande suivante:

PVK2PFX –pvk yourprivatekeyfile.pvk –spc yourcertfile.cer –pfx yourpfxfile.pfx –po yourpfxpassword

où:

  • pvk-yourprivatekeyfile.pvk est la clé privée le fichier que vous avez créé à l'étape 4.
  • spc-yourcertfile.cer est le fichier de certificat que vous avez créé à l'étape 4.
  • pfx-yourpfxfile.pfx est le nom du .fichier pfx qui sera créé.
  • po-yourpfxpassword est le mot de passe que vous voulez attribuer à la .fichier pfx. Vous serez invité pour ce mot de passe lorsque vous ajoutez le .pfx à un projet dans Visual Studio pour la première fois.

(optionnellement (et pas pour L'OP, mais pour les futurs lecteurs), vous pouvez créer le .cer et .pvk file from scratch) (vous feriez cela avant le ci-dessus). Remarque les MM/JJ / AAAA sont des espaces réservés pour les dates de début et de fin. voir l'article de msdn pour la documentation complète.

makecert -sv yourprivatekeyfile.pvk -n "CN=My Certificate Name" yourcertfile.cer -b mm/dd/yyyy -e mm/dd/yyyy -r
5
répondu granadaCoder 2018-07-28 04:56:42

C'est de loin le moyen le plus facile de se convertir *.CRE to *.fichiers pfx:

il suffit de télécharger le convertisseur de certificats portable de DigiCert: https://www.digicert.com/util/pfx-certificate-management-utility-import-export-instructions.htm

exécutez-le, sélectionnez un fichier et obtenez votre *.pfx!!

4
répondu user1613797 2015-03-09 13:21:22

j'ai créé .fichier pfx .clé et .pem fichiers.

comme ceci openssl pkcs12 -inkey rootCA.key -in rootCA.pem -export -out rootCA.pfx

4
répondu Siim Nelis 2017-01-08 10:55:49

lorsque vous dites que le certificat est disponible en MMC, est-il disponible sous "Utilisateur courant" ou "ordinateur Local"? J'ai découvert que je ne peux exporter la clé privée que si elle est sous L'ordinateur Local.

vous pouvez ajouter le snap pour les certificats à MMC et choisir le compte pour lequel il doit gérer les certificats. Choisissez L'Ordinateur Local. Si votre certificat n'est pas là, importez-le en cliquant avec le bouton droit de la souris sur le magasin et en choisissant toutes les tâches > Import.

Now naviguez vers votre certificat importé sous la version informatique locale du certificat. Cliquez-droit sur le certificat et choisissez Toutes les Tâches > Exporter. La deuxième page de l'assistant d'exportation devrait vous demander si vous souhaitez exporter la clé privée. Sélectionnez Oui. L'option PFX sera désormais la seule disponible (elle est grisée si vous sélectionnez NON et l'option d'exporter la clé privée n'est pas disponible sous le compte utilisateur courant).

il vous sera demandé de définir un mot de passe pour le fichier PFX et ensuite de définir le nom du certificat.

3
répondu Ryan Elkins 2013-02-26 18:53:44

j'avais le même problème. Mon problème était que l'ordinateur qui avait généré la demande de certificat initiale s'était écrasé avant que le processus de validation ssl prolongé ne soit terminé. J'avais besoin de générer une nouvelle clé privée puis d'importer le certificat mis à jour du fournisseur de certificat. Si la clé privée n'existe pas sur votre ordinateur, alors vous ne pouvez pas exporter le certificat pfx. Ils l'option est grisée.

1
répondu Bill Mahoney 2016-06-28 15:55:40

bien qu'il soit probablement plus facile de générer un nouveau CSR en utilisant IIS( comme @rainabba dit), en supposant que vous avez les certificats intermédiaires il y a quelques convertisseurs en ligne là-bas - par exemple: https://www.sslshopper.com/ssl-converter.html

cela vous permettra de créer un PFX à partir de votre certificat et de votre clé privée sans avoir à installer un autre programme.

1
répondu William 2016-12-13 18:01:50

dans la plupart des cas, si vous n'êtes pas en mesure d'exporter le certificat en tant que PFX (y compris la clé privée), c'est parce que MMC/IIS ne peut pas trouver/n'a pas accès à la clé privée (utilisée pour générer le CSR). Voici les étapes que j'ai suivies pour régler cette question:

  • Exécuter la console MMC en tant qu'Admin
    • Générer le CSR à l'aide de la console MMC. Suivre cette instruction pour rendre le certificat exportable.
  • une fois que vous aurez obtenu le certificat de L'AC (crt + p7b), importez-les (certificats personnels\et certificats de L'Autorité de Certification intermédiaire\)
  • IMPORTANT: faites un clic droit sur votre nouveau certificat (personnel\certificats) toutes les tâches..Gérer la clé privée, et attribuer des permissions à votre compte ou à tout le monde (risqué!). Vous pouvez revenir aux autorisations une fois que vous avez terminé.
  • maintenant, droit-cliquez le certificat et sélectionnez Tous Tâche..Export, et vous devriez être en mesure d'exporter le certificat, y compris la clé privée, sous forme de fichier PFX, et vous pouvez le télécharger sur Azure!

Espérons que cette aide!

0
répondu Jose Parra 2016-03-06 22:21:03

je sais que quelques utilisateurs ont parlé d'installer ceci et cela et d'ajouter des programmes de ligne de commande et de téléchargement...

personnellement je suis paresseux et je trouve toutes ces méthodes encombrantes et lentes, en plus Je ne veux rien télécharger et trouver les bonnes lignes cmd si je n'ai pas à le faire.

la meilleure façon pour moi sur mon serveur IIS personnel est D'utiliser RapidSSLOnline. C'est un outil qui est sur un serveur vous permet de télécharger votre certificat et privé clé et est capable de générer un fichier pfx pour vous que vous pouvez importer directement dans IIS.

Le lien est ici: https://www.rapidsslonline.com/ssl-tools/ssl-converter.php

les étapes utilisées pour le scénario demandé sont indiquées ci-dessous.

  1. sélectionner le type de courant = PEM
  2. changement pour = PFX
  3. Téléchargez votre certificat
  4. Téléchargez votre clé privée
  5. Si vous avez de l'autorité de certification RACINE cert ou certificats intermédiaires télécharger trop
  6. définir un mot de passe de votre choix, utilisé dans IIS
  7. cliquez sur la reCaptcha pour prouver que vous n'êtes pas un bot
  8. , Cliquez Sur "Convertir

et c'est tout, vous devriez avoir un PFX téléchargé et l'utiliser dans votre processus D'importation sur IIS.

Espérons que cela aide les autres comme esprit, paresseux tech personnes.

0
répondu TheNerdyNerd 2017-05-11 08:28:39