PKCS#12, özel anahtarı, sunucu sertifikasını ve ara sertifikaları tek bir parola korumalı dosyada birleştiren arşiv formatıdır. Uzantısı .pfx veya .p12 olur. IIS, Windows sertifika deposu, Java keystore ve Azure/AWS gibi birçok platform bu dosyayı kabul eder.
PFX oluşturma
Elinizde PEM biçimli anahtar, sertifika ve zincir varsa:
openssl pkcs12 -export -out paket.pfx -inkey anahtar.key -in sertifika.crt -certfile ara-zincir.crt
Komut sizden bir dışa aktarma parolası ister; bu parolayı içe aktarırken tekrar gerekecektir.
PFX'ten PEM'e çıkarma
# Sadece sertifikalar
openssl pkcs12 -in paket.pfx -nokeys -out sertifikalar.pem
# Sadece özel anahtar (parolasız çıkarır, dikkatli saklayın)
openssl pkcs12 -in paket.pfx -nocerts -nodes -out anahtar.pem
# İçeriği listele
openssl pkcs12 -in paket.pfx -info -noout
OpenSSL 3.x ile eski algoritmalarla üretilmiş (RC2-40 gibi) PFX dosyalarını açarken -legacy bayrağı gerekebilir.
Java keystore'a aktarma
keytool -importkeystore -srckeystore paket.pfx -srcstoretype PKCS12 -destkeystore keystore.jks -deststoretype JKS
Yeni Java sürümlerinde hedefi de PKCS12 bırakmak tercih edilir: -deststoretype PKCS12.
Windows'ta
- PFX dosyasına çift tıklayıp "İçeri Aktar" sihirbazını kullanabilirsiniz.
- PowerShell'de
Import-PfxCertificatecmdlet'i kullanılır.
Sık hatalar ve güvenlik
- "Mac verify error: invalid password" hatası parolanın yanlış olduğunu gösterir.
- Zinciri eklemezseniz bazı istemciler "eksik ara sertifika" uyarısı verir.
- PFX, özel anahtar içerir; güçlü parola kullanın ve dosyayı yalnızca güvenli yollarla taşıyın.
Kurulum sonrası sonucu SSL denetleme aracıyla doğrulayabilirsiniz. Sertifika edinmek için SSL sertifikaları sayfasına bakın.