Agar proses sign (tandatangan digital) file mobileconfig, kita bisa memindahkan proses sign dari Mac ke Linux, sehingga bisa dibuat otomatis. Dengan menggunakan openssl di Linux proses automatisasi dan menggabungkannya dengan berbagai fitur di website menjadi lebih gampang. Sehingga prosesnya jauh lebih cepat dan tanpa perlu Mac yang online 24 jam.
Ambil file .p12
dan export sertifikat dari Mac dengan nama Apple Worldwide Developer Relations Certification Authority
, hasil export dari Apple ceritificate Authority tersebut adalah AppleWorldwideDeveloperRelationsCertificationAuthority.der
1. Ekstrak private key dan sertifikat dari .p12
Anggap file .p12
yang anda dapatkan adalah jaranguda.p12
Ekstrak Key
openssl pkcs12 -in jaranguda.p12 -nocerts -out jaranguda.key.pem
masukkan password untuk mengimport private key. lalu masukkan password baru untuk decrypt key tersebut nantinya.
Ekstrak Sertifikat
openssl pkcs12 -in jaranguda.p12 -clcerts -nokeys -out jaranguda.crt.pem
2. Conversi Apple CA DER ke PEM
Hasil export CA Apple Worldwide Developer Relations Certification Authority
dari Mac masih dalam format DER, untuk itu ubah ke bentuk PEM
openssl x509 -inform der -in AppleWorldwideDeveloperRelationsCertificationAuthority.der -out apple.pem
3. Sign Mobile Config
Setelah ketiga file CA (apple.pem
), Key (jaranguda.key.pem
) dan sertifikat (jaranguda.crt.pem
). Disini kita akan meng-sign jaranguda.mobileconfig
, hasil akhirnya adalah file yang telah di tandatangan yang kita beri nama jaranguda-signed.mobileconfig
openssl smime -sign -signer jaranguda.crt.pem -inkey jaranguda.key.pem -certfile apple.pem -nodetach -outform der -in jaranguda.mobileconfig -out jaranguda-signed.mobileconfig
masukkan password yang dibuat saat mengesktrak private key.
4. Menghapus Password dari Private Key
Bila file jaranguda.key.pem
dibuka ada baris
-----BEGIN ENCRYPTED PRIVATE KEY----- ... -----END ENCRYPTED PRIVATE KEY-----
untuk otomatisasi lebih baik key tersebut dihapus ;)
openssl rsa -in jaranguda.key.pem -out jaranguda-nonpass.key.pem