J'ai besoin d'un fichier .pfx pour installer https sur le site Web sur IIS.
J'ai deux fichiers distincts: certificat (.cer ou pem) et clé privée (.crt) mais IIS accepte uniquement les fichiers .pfx.
J'ai évidemment installé le certificat et il est disponible dans le gestionnaire de certificats (mmc) mais lorsque je sélectionne l'assistant d'exportation de certificat, je ne peux pas sélectionner le format PFX (il est grisé)
Existe-t-il des outils pour le faire ou des exemples C # de le faire par programme?
Réponses:
Vous devrez utiliser openssl.
openssl pkcs12 -export -out domain.name.pfx -inkey domain.name.key -in domain.name.crt
Le fichier de clé est juste un fichier texte contenant votre clé privée.
Si vous avez une autorité de certification racine et des certificats intermédiaires, incluez-les également en utilisant plusieurs
-in
paramètresopenssl pkcs12 -export -out domain.name.pfx -inkey domain.name.key -in domain.name.crt -in intermediate.crt -in rootca.crt
Vous pouvez installer openssl à partir d'ici: openssl
la source
openssl pkcs12 -export -out domain.name.pfx -inkey domain.name.key -in domain.name.crt -in intermediate.crt -in rootca.crt
-certfile intermediate.crt -certfile rootca.crt
avant d'être invité à protéger le.pfx
avec un mot de passe / mot de passe. Je crois que c'est probablement parce que le fichier.key
ne correspond pas aux-in
fichiers supplémentaires , ce qui entraîne le message d'erreur «Aucun certificat ne correspond à la clé privée» que je recevais.L'utilitaire de ligne de commande Microsoft Pvk2Pfx semble avoir les fonctionnalités dont vous avez besoin:
Pvk2Pfx (Pvk2Pfx.exe) est un outil en ligne de commande qui copie les informations de clé publique et de clé privée contenues dans les fichiers .spc, .cer et .pvk dans un fichier d'échange d'informations personnelles (.pfx).
http://msdn.microsoft.com/en-us/library/windows/hardware/ff550672(v=vs.85).aspx
Remarque: si vous avez besoin / voulez / préférez une solution C #, alors vous pouvez envisager d'utiliser l' api http://www.bouncycastle.org/ .
la source
Si vous recherchez une interface graphique Windows, consultez DigiCert. Je viens de l'utiliser 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 l'exporter en tant que PFX, avec et sans fichier de clés.
https://www.digicert.com/util
la source
DigiCertUtil.exe
exécutable. Le plus simple est de simplement le copier dans le dossier des certificats.Vous n'avez PAS besoin de openssl ou makecert ou de tout cela. Vous n'avez pas non plus besoin de la clé personnelle qui vous a été donnée par votre autorité de certification. Je peux presque garantir que le problème est que vous vous attendez à pouvoir utiliser les fichiers de clés et de cer fournis par votre autorité de certification, mais ils ne sont pas basés sur "la manière IIS". Je suis tellement fatigué de voir des informations mauvaises et difficiles ici que j'ai décidé de bloguer sur le sujet et la solution. Lorsque vous réalisez ce qui se passe et voyez à quel point c'est facile, vous voudrez me faire un câlin :)
Certificats SSL pour IIS avec PFX une fois pour toutes - SSL et IIS expliqués - http://rainabba.blogspot.com/2014/03/ssl-certs-for-iis-with-pfx-once-and-for.html
Utilisez l'interface utilisateur "Certificats de serveur" IIS pour "Générer une demande de certificat" (les détails de cette demande sont hors de portée de cet article mais ces détails sont essentiels). Cela vous donnera une CSR préparée pour IIS. Vous remettez ensuite ce CSR à votre CA et demandez un certificat. Ensuite, vous prenez le fichier CER / CRT qu'ils vous donnent, revenez à IIS, "Complete Certificate Request" au même endroit où vous avez généré la demande. Il peut demander un .CER et vous pourriez avoir un .CRT. Ce sont les mêmes choses. Modifiez simplement l'extension ou utilisez le .liste déroulante d'extension pour sélectionner votre .CRT. Fournissez maintenant un "nom convivial" approprié (* .votredomaine.com, votredomaine.com, foo.votredomaine.com, etc.) C'EST IMPORTANT! Cela DOIT correspondre à ce pour quoi vous avez configuré la CSR et à ce que votre autorité de certification vous a fourni. Si vous avez demandé un caractère générique, votre autorité de certification doit avoir approuvé et généré un caractère générique et vous devez l'utiliser. Si votre CSR a été généré pour foo.votredomaine.com, vous DEVEZ fournir la même chose à cette étape.
la source
J'ai créé un fichier .pfx à partir de fichiers .key et .pem.
Comme ça
openssl pkcs12 -inkey rootCA.key -in rootCA.pem -export -out rootCA.pfx
la source
-export
interrupteur.https://msdn.microsoft.com/en-us/library/ff699202.aspx
((les citations pertinentes de l'article sont ci-dessous))
(En option (et pas pour l'OP, mais pour les futurs lecteurs), vous pouvez créer le fichier .cer et .pvk à partir de zéro) (vous le feriez AVANT ce qui précède). Notez que les mm / jj / aaaa sont des espaces réservés pour les dates de début et de fin. voir l'article msdn pour une documentation complète.
la source
Vous devez utiliser l'outil makecert.
Ouvrez une invite de commande en tant qu'administrateur et tapez ce qui suit:
Où
<CertifcateName>
= le nom de votre certificat à créer.Ensuite, vous pouvez ouvrir le composant logiciel enfichable Gestionnaire de certificats pour la console de gestion en tapant certmgr.msc dans le menu Démarrer, cliquez sur personnel> certificats> et votre certificat doit être disponible.
Voici un article.
https://azure.microsoft.com/documentation/articles/cloud-services-certs-create/
la source
J'ai un lien avec votre besoin. Combinez des fichiers CRT et KEY dans un PFX avec OpenSSL
Extraits du lien ci-dessus:
ÉDITER:
Il existe un lien de support avec des informations étape par étape sur la façon d'installer le certificat.
Une fois l'installation réussie, exportez le certificat, choisissez le
.pfx
format, incluez la clé privée.Remarque importante :: Pour exporter le certificat au format .pfx, vous devez suivre les étapes sur la même machine à partir de laquelle vous avez demandé le certificat .
Le fichier importé peut être téléchargé sur le serveur.
la source
openssl pkcs12 -inkey example.com.key -in example.com.crt -export -out example.com.pfx
C'est de loin le moyen le plus simple de convertir des fichiers * .cer en * .pfx:
Téléchargez simplement le convertisseur de certificat portable depuis 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 !!
la source
Lorsque vous dites que le certificat est disponible dans MMC, est-il disponible sous "Utilisateur actuel" ou "Ordinateur local"? J'ai constaté que je ne peux exporter la clé privée que si elle se trouve sous Ordinateur local.
Vous pouvez ajouter le composant logiciel enfichable des certificats à MMC et choisir le compte pour lequel il doit gérer les certificats. Choisissez Ordinateur local. Si votre certificat n'est pas là, importez-le en cliquant avec le bouton droit sur le magasin et en choisissant Toutes les tâches> Importer.
Accédez maintenant à votre certificat importé sous la version Ordinateur local du composant logiciel enfichable de certificat. Cliquez avec le bouton 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 d'utilisateur actuel).
Vous serez invité à définir un mot de passe pour le fichier PFX, puis à définir le nom du certificat.
la source
J'avais le même problème. Mon problème était que l'ordinateur qui avait généré la demande de certificat initiale était tombé en panne avant la fin du processus de validation SSL étendu. J'avais besoin de générer une nouvelle clé privée, puis d'importer le certificat mis à jour depuis le fournisseur de certificats. Si la clé privée n'existe pas sur votre ordinateur, vous ne pouvez pas exporter le certificat au format pfx. Leur option est grisée.
la source
Bien qu'il soit probablement plus facile de générer une nouvelle CSR à l'aide d'IIS (comme l'a dit @rainabba), en supposant que vous ayez les certificats intermédiaires, il existe des convertisseurs en ligne - 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.
la source
Dans la plupart des cas, si vous ne parvenez pas à 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 la CSR). Voici les étapes que j'ai suivies pour résoudre ce problème:
J'espère que cela t'aides!
la source
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écharger ...
Personnellement, je suis paresseux et je trouve toutes ces méthodes lourdes et lentes, et 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. Il s'agit d'un outil qui se trouve sur un serveur vous permet de télécharger votre certificat et votre clé privée 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
Voici les étapes utilisées pour le scénario demandé.
Et c'est tout, vous devez télécharger un PFX et l'utiliser dans votre processus d'importation sur IIS.
J'espère que cela aide d'autres personnes de technologie paresseuses et partageant les mêmes idées.
la source
Pour les fichiers cfx de SSLForFree, je trouve ce https://decoder.link/converter plus simple.
Assurez-vous simplement que PEM -> PKCS # 12 est sélectionné, puis téléchargez le certificat, ca_bundle et les fichiers de clés et convertissez. N'oubliez pas le mot de passe, puis téléchargez avec le mot de passe que vous avez utilisé et ajoutez des liaisons.
la source