Domanda

Ho bisogno di file .pfx installare sul sito https su IIS.

Ho due file separati: certificato (.cer o PEM) e la chiave privata (CRT), ma IIS accetta solo i file .pfx

.

Io, ovviamente, installato certificato ed è disponibile in di gestione dei certificati (MMC), ma quando seleziono Esportazione guidata certificati non riesco a selezionare il formato PFX (è grigio)

Ci sono strumenti per farlo o C # esempi di farlo modo pianificato?

Nessuna soluzione corretta

Altri suggerimenti

È necessario utilizzare OpenSSL.

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

Il file chiave è solo un file di testo con la chiave privata in esso.

Se si dispone di una CA principale e certs intermedi, quindi includere anche loro usando -in multipla params

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

È possibile installare OpenSSL da qui: OpenSSL

L'utilità della riga di comando di Microsoft Pvk2Pfx sembra avere le funzionalità necessarie:

Pvk2Pfx (Pvk2Pfx.exe) è una chiave pubblica della riga di comando di copie di strumenti e le informazioni chiave privata contenute in spc, CER, e file .pvk in un file Personal Information Exchange (.pfx).
http://msdn.microsoft.com/en-us /library/windows/hardware/ff550672(v=vs.85).aspx

Nota: se avete bisogno / voglia / preferire una soluzione di C #, allora si può prendere in considerazione utilizzando il http://www.bouncycastle.org / api.

Se siete alla ricerca di una GUI di Windows, check out DigiCert. Ho appena usato questo ed è stato abbastanza semplice.

Nella scheda SSL, ho importato il certificato. Poi, una volta ho selezionato l'I certificato è stato in grado di esportare come PFX, con e senza un file di chiavi.

https://www.digicert.com/util

Non hai bisogno di OpenSSL o makecert o nulla di tutto ciò. Inoltre non è necessario il tasto personale dato a voi dal vostro CA. Posso quasi garantire che il problema è che ci si aspetta di essere in grado di utilizzare i file di chiave e CER fornite dal CA ma non si basano su "la via IIS". Sono così stanco di vedere informazioni cattivo e difficile qui che ho deciso di blog il soggetto e la soluzione. Quando ti rendi conto che cosa sta succedendo e vedere come è facile, si vuole per abbracciarmi:)

Certificati SSL per IIS con PFX una volta per tutte - SSL e IIS spiegato - http://rainabba.blogspot.com/2014/03/ssl-certs-for-iis-with-pfx-once-and-for.html

Usare IIS "Certificati Server" interfaccia utente per "Genera richiesta di certificato" (i dettagli di questa richiesta sono fuori della portata di questo articolo, ma questi dettagli sono fondamentali). Questo vi darà un CSR predisposto per IIS. È poi dare che la RSI per la CA e chiedere un certificato. Poi si prende il file CER / CRT ti danno, torna a IIS, "richiesta di certificato Complete" nello stesso luogo si ha generato la richiesta. Può chiedere un .CER e si potrebbe avere un .CRT. Sono la stessa cosa. Basta cambiare l'estensione o utilizzare il . estensione a discesa per selezionare il .CRT. Ora fornire una vera e propria "nome descrittivo" (* .tuodominio.com, yourdomain.com, foo.yourdomain.com, ecc ..) questo è importante! Questo deve corrispondere a quanto impostare il CSR e che cosa il vostro CA ha fornito. Se avete chiesto un jolly, la CA deve essere approvato e generato un jolly ed è necessario utilizzare la stessa. Se il CSR è stato generato per foo.yourdomain.com, è necessario fornire lo stesso a questo punto.

È necessario utilizzare lo strumento makecert.

Aprire un prompt dei comandi come amministratore e digitare la seguente:

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

Dove <CertifcateName> = il nome del CERT per creare.

Quindi è possibile aprire il Gestione certificati snap-in per la console di gestione digitando certmgr.msc nel menu Start, scegliere personali> certificati> e il vostro cert dovrebbero essere disponibili.

Ecco un articolo.

https://azure.microsoft.com/documentation/ articoli / nube-servizi-certs-creare /

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

((citazioni rilevanti da questo articolo sono al di sotto))

Successivamente, è necessario creare il file .pfx che verrà utilizzato per firmare le distribuzioni. Aprire una finestra del prompt dei comandi e digitare il seguente comando:

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

dove:

  • PVK -. Yourprivatekeyfile.pvk è il file di chiave privata che si è creato nel passaggio 4
  • SPC -. Yourcertfile.cer è il file del certificato creato nel passaggio 4
  • PFX -. Yourpfxfile.pfx è il nome del file pfx che sarà la creazione
  • po - yourpfxpassword è la password che si desidera assegnare al file .pfx. Verrà richiesto per questa password quando si aggiunge il file .pfx a un progetto in Visual Studio per la prima volta.

(facoltativamente (e non per il PO, ma per i futuri lettori), è possibile creare il file di CER e .pvk da zero) (si dovrebbe fare questo prima di quanto sopra). Si noti il ??gg / mm / aaaa sono segnaposto per date di inizio e di fine. vedi articolo di MSDN per la documentazione completa.

makecert -sv yourprivatekeyfile.pvk -n "CN=My Certificate Name" yourcertfile.cer -b mm/dd/yyyy -e mm/dd/yyyy -r

Ho avuto un legame con il vostro requisito. Combina CRT e KEY file in un PFX con OpenSSL

Estratti dal link qui sopra:

In primo luogo abbiamo bisogno di estrarre il certificato CA dalla esistente il file .crt, perché abbiamo bisogno di questo più tardi. Quindi aprire il .crt e fare clic su sulla scheda Percorso certificazione.

Fare clic sul certificato più in alto (in questo caso VeriSign) e premi View Certificato. Selezionare la scheda Dettagli e premere Copia su file ...

Seleziona base-64 codificato X.509 certificato (.CER) Salva come rootca.cer o qualcosa di simile. Posizionarlo nella stessa cartella degli altri file.

Rinomina dal rootca.cer a rootca.crt Ora dovremmo avere 3 file in la cartella da cui si può creare un file PFX.

Qui è dove abbiamo bisogno di OpenSSL. Possiamo sia scaricarlo e installarlo su Windows , o terminale semplicemente aperto su OSX.

Modifica

  1. C'è un link di supporto con passo dopo passo le informazioni su come fare installare il certificato.

  2. Dopo l'installazione con successo, esportare il certificato, scegliere il formato .pfx, includere la chiave privata.

    Nota importante: :. per esportare il certificato in formato pfx è necessario seguire i passaggi sulla stessa macchina da cui hai richiesto il certificato

  3. Il file importato può essere caricato sul server.

Questo è di gran lunga il modo più semplice per convertire * .cer ai file * .pfx:

Basta scaricare il convertitore certificato portatile da DigiCert: https://www.digicert.com/util /pfx-certificate-management-utility-import-export-instructions.htm

Esegui, selezionare un file e ottenere la vostra * .pfx !!

Ho creato file pfx da file .key e .pem.

Ti piace questa openssl pkcs12 -inkey rootCA.key -in rootCA.pem -export -out rootCA.pfx

Quando si dice il certificato è disponibile in MMC, è disponibile sotto "Current User" o "computer locale"? Ho scoperto che posso solo esportare la chiave privata se è sotto Computer locale.

È possibile aggiungere lo snap in per i certificati a MMC e scegliere quale account si deve gestire i certificati per. Scegliere Computer locale. Se il certificato non è lì, importarlo facendo clic destro al negozio e scegliere Tutte le attività> Importa.

Ora navigare sul certificato importato sotto la versione del computer locale del certificato di scatto. Fare clic destro del certificato e scegliere Tutte le attività> Esporta. La seconda pagina della procedura guidata di esportazione dovrebbe chiedere se si desidera esportare la chiave privata. Selezionare Sì. L'opzione PFX sarà ora l'unico disponibile (è in grigio se non sono selezionate e la possibilità di esportare la chiave privata non è disponibile con l'account utente corrente).

ti verrà chiesto di impostare una password per il file PFX e poi per impostare il nome del certificato.

ho avuto lo stesso problema. Il mio problema era che il computer che ha generato la richiesta di certificato iniziale era bloccato prima che il processo di convalida SSL EV è stata completata. Avevo bisogno di generare una nuova chiave privata e quindi importare il certificato aggiornato dal provider di certificati. Se la chiave privata non esiste sul computer, allora non è possibile esportare il certificato come pfx. Essi opzione è grigio.

Anche se è probabilmente più facile per generare un nuovo CSR utilizzando IIS (come @rainabba detto), a patto di avere i certificati intermedi ci sono alcuni convertitori in linea là fuori - per esempio: https://www.sslshopper.com/ssl-converter.html

Questo vi permetterà di creare un PFX dal certificato e chiave privata senza dover installare un altro programma.

Nella maggior parte dei casi, se non si riesce a esportare il certificato come PFX (tra cui la chiave privata) è perché MMC / IIS non riesce a trovare / non hanno accesso alla chiave privata (utilizzato per generare il CSR) . Questi sono i passi che ho seguito per risolvere questo problema:

  • Esegui MMC come Admin
    • Generare il CSR utilizzando MMC. Seguire queste istruzioni per rendere l'esportabile certificato.
  • Una volta a ottenere il certificato dal CA (CRT + p7b), li (Personale \ Certificati e certificazione intermedie AUTHORITY \ Certificates) importare
  • IMPORTANTE: (! Rischioso) Fare clic con il nuovo certificato (Personale \ Certificati) Tutti Tasks..Manage chiave privata, e le autorizzazioni di assegnare al tuo account o tutti. È possibile tornare alle autorizzazioni precedenti una volta terminata.
  • Ora, fare clic sul certificato e selezionare Tutte Tasks..Export, e si dovrebbe essere in grado di esportare il certificato tra cui la chiave privata in un file PFX, e si può caricarlo su Azure!

Spero che questo aiuti!

Lo so alcuni utenti hanno parlato su come installare questo e quello e l'aggiunta di righe di comando programmi e scaricano ...

Personalmente sono pigro e trovo tutti questi metodi ingombrante e lento, più io non voglio scaricare nulla e trovare le linee giuste cmd se io non devo.

Il modo migliore per me sul mio server IIS personale è quello di utilizzare RapidSSLOnline. Questo è uno strumento che di su un server consente di caricare il certificato e la chiave privata ed è in grado di generare un file pfx per voi che è possibile importare direttamente in IIS.

Il link è qui: https://www.rapidsslonline.com/ssl-tools/ssl-converter. php

Di seguito è la procedura utilizzata per lo scenario richiesto.

  1. Selezionare il tipo di corrente = PEM
  2. Cambia = PFX
  3. Carica il certificato
  4. Carica la tua chiave privata
  5. li Se si dispone della CA cert o intermedi certs caricare troppo
  6. Impostare una password di tua scelta, utilizzato in IIS
  7. Fare clic sul reCaptcha per dimostrare che non sei un bot
  8. Fare clic su Converti

E questo è tutto si dovrebbe avere un PFX scaricato e utilizzare questo nel processo di importazione su IIS.

Spero che questo aiuti altro come mentalità, la gente pigra tech.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top