SSL - Convert PBX
Berikut langkah-langkah lengkap (dengan perintah OpenSSL dan konfigurasi nginx) untuk mengambil isi dari file .pfx yang diproteksi password. Berikut langkah-langkah praktis dan langsung bisa dijalankan di server Linux (atau WSL/Git-Bash di Windows).
1. Periksa isi .pfx (opsional, hanya melihat)
# akan diminta Import Password — masukkan password .pfx Anda
openssl pkcs12 -info -in mycert.pfx
2. Ekstrak private key (tanpa encrypt / tanpa passphrase) ( Legacy Mode )
Note : OpenSSL versi terbaru (3.x) sudah drop support untuk algoritma lama RC2-40-CBC yang dipakai oleh Microsoft PFX. Jadi OpenSSL Anda tidak bisa membaca bagian CA chain (bagian PKCS7 Encrypted data).
openssl pkcs12 -in ilusi.pfx -nodes -legacy -out ilusi-all.pem
3. Pisahkan file hasil ekstrak
# Private key (BEGIN PRIVATE KEY sampai END PRIVATE KEY)
awk 'BEGIN {p=0} /BEGIN PRIVATE KEY/ {p=1} p; /END PRIVATE KEY/ {p=0}' ag-all.pem > key.pem
# Certificate (BEGIN CERTIFICATE sampai END CERTIFICATE)
awk 'BEGIN {p=0} /BEGIN CERTIFICATE/ {p=1; i++} p {print > "cert" i ".pem"} /END CERTIFICATE/ {p=0}' ag-all.pem
Hasilnya:
-
key.pem→ private key -
cert1.pem→ biasanya server certificate -
cert2.pem,cert3.pem→ biasanya CA intermediate/root
Gabungkan cert nya :
cat cert1.pem cert2.pem cert3.pem > fullchain.pem
4. Simpan ke lokasi standar
sudo mkdir -p /etc/ssl/private /etc/ssl/certs
sudo mv key.pem /etc/ssl/private/ilusi.key
sudo mv fullchain.pem /etc/ssl/certs/ilusi-fullchain.pem
sudo chmod 600 /etc/ssl/private/ilusi.key
sudo chmod 644 /etc/ssl/certs/ilusi-fullchain.pem