Saya memiliki OpenSSL x64 di Windows 7 yang saya unduh dari openssl-for-windows di Google Code . Saya mencoba menjalankan:
openssl pkcs12 -export -in "path.p12" -out "newfile.pem"
tapi saya mendapatkan kesalahan.
unable to load private key
Bagaimana cara mengekstrak sertifikat di PEM dari toko PKCS # 12 menggunakan OpenSSL?
Jawaban:
Mencoba:
Setelah itu Anda memiliki:
Untuk memasukkan sertifikat dan kunci dalam file yang sama gunakan yang berikut ini
Jika Anda perlu memasukkan kata sandi PKCS # 12 langsung dari baris perintah (misalnya skrip), cukup tambahkan
-passin pass:${PASSWORD}
:sumber
openssl pkcs12 -in path.p12 -out newfile.pem
Anda hanya perlu memberikan kata sandi. Anda bisa melakukannya dalam baris perintah yang sama dengan sintaks berikut:
Anda kemudian akan diminta kata sandi untuk mengenkripsi kunci pribadi di file output Anda. Sertakan opsi "node" di baris di atas jika Anda ingin mengekspor kunci pribadi yang tidak dienkripsi (plaintext):
Info lebih lanjut: http://www.openssl.org/docs/apps/pkcs12.html
sumber
Jika Anda dapat menggunakan Python, akan lebih mudah jika Anda memiliki
pyopenssl
modul. Ini dia:sumber
file
dan tidakopen
? Saya hanya ingin memahaminya karena saya akan menggunakannya di masa depan (untuk menyederhanakan solusi saya memanggil openssh sebagai perintah)open("push.p12", 'rb').read()
.with open("push.pem", "wb") as fobj: fobj.write(crypto.dump_certificate(crypto.FILETYPE_PEM, p12.get_certificate()))
untuk menulis sertifikat danwith open("push.key", "wb") as fobj: fobj.write(crypto.dump_privatekey(crypto.FILETYPE_PEM, p12.get_privatekey()))
untuk kunci.Saya punya file PFX dan perlu membuat file KUNCI untuk NGINX, jadi saya melakukan ini:
Kemudian saya harus mengedit file KUNCI dan menghapus semua konten hingga
-----BEGIN PRIVATE KEY-----
. Setelah itu NGINX menerima file KEY.sumber
Jika Anda memerlukan file PEM tanpa kata sandi, Anda dapat menggunakan solusi ini .
Cukup salin dan tempel kunci pribadi dan sertifikat ke file yang sama dan simpan sebagai .pem.
File akan terlihat seperti:
Itulah satu-satunya cara saya menemukan untuk mengunggah sertifikat ke perangkat Cisco untuk HTTPS.
sumber