Cara Mengelola CA pada EJBCA 6.10.1.2

Export dan Import CA

Dalam bebarapa keadaan, melakukan backup terhadap CA Signature Keys dan Encryption Keys adalah hal yang cukup bijak. Namun ada satu hal yang perlu diingat saat melakukan backup CA Keys, yaitu lindungilah kunci tersebut sama seperti kita melindungi CA itu sendiri.

Soft token CA bisa diekspor dan di-backup secara langsung melalui EJBCA, tapi tidak dengan CA yang menggunakan HSM (Hardware Security Module). Untuk mengekspor kunci pada CA yang menggunakan HSM maka proses backup harus dilakukan melalui HSM.

Ada 2 cara untuk mengimpor EJBCA yaitu dengan CLI (Command Line Interface) dan GUI (Graphical User Interface), sementara HSM hanya bisa diimpor dengan menggunakan CLI.

Menggunakan CLI (Ekspor)

Untuk mengekspor sebuah CA dengan nama imporCA menjadi file PKCS#12 bernama /home/imporCA.p12 , jalankan perintah berikut di direktori $EJBCA_HOME:

$ sh bin/ejbca.sh ca exportca imporCA /home/jboss/imporCA.p12
Setting SignatureKeyAlias to SignatureKeyAlias
Setting EncryptionKeyAlias to EncryptionKeyAlias
Enter keystore password:
ImporCA
Masukkan Password
  • Jika Password belum diubah, isi dengan foo123

Apabila menemukan error seperti ini, maka ada perubahan yang harus dilakukan pada crypto token yang ada pada CA Funtions:

  • Error ini menandakan kalau private keys CA tidak diizinkan untuk diekspor
Pesan Error

Untuk membenahinya, masuk ke CA Functions →Crypto Tokens & pilih Crypto Token yang digunakan oleh CA tersebut. Pada contoh kali ini, imporCA menggunakan crypto token bernama imporCA:

Crypto Token imporCA

Kalau diperhatikan, bagian check box untuk allow export private keys masih belum tercentang. Untuk mengubahnya, pilih switch to edit mode:

Pilihan ekspor belum diizinkan

Centang check box allow export private keys kemudian tekan tombol save:

Centang Allow export Private key

Sekarang Private Key dari CA sudah bisa diekspor:

Private Key sudah bisa diekspor

Menggunakan CLI (Impor)

Untuk mengimpor backup key yang sudah kita expor tadi ke CA lainnya, jalankan perintah berikut pada direktori $EJBCA_HOME:

$ sh bin/ejbca.sh ca importca imporCA /root/imporCA.p12 
Importing soft token.
Enter keystore password:
Proses impor CA
impor ca

Pada versi GUI-nya pun pasti otomatis langsung muncul:

imporCA sudah muncul

Untuk bisa melakukan import CA yang mengunakan HSM. Jalankan perintah berikut:

$ sh bin/ejbca.sh ca importca --help
Opsi yang bisa digunakan pada perintah importca

*Baca deskripsi dan rajin coba ya*

Baca juga: Konsep pada EJBCA

Menggunakan GUI

Untuk bisa mengekspor dan mengimpor CA Keys dengan menggunakan admin GUI, kita terlebih dahulu harus memiliki akses superadministrator. Pastikan kalau file .p12 tidak secara otomatis tersimpan pada tempat yang diinginkan oleh browser. 

Untuk mengekspor CA Keys, lakukan tahap berikut:

  • Pilih Certificate Authorities dari administrator menu.
  • Pada CA yang ingin diekspor, tekan edit.
  • Pergi ke baris yang bertuliskan CA export requires the token authentication code.
  • Masukkan keystore password tepat di dalam kotak yang disediakan kemudiakan tekan Export CA keystore
  • File PKCS#12 akan terdownload oleh browser ke lokasi yang sudah kamu atur sebelumnya.
Edit CA yang ingin diekspor
Masukkan Keystore Password untuk mengunduh file .p12
FIle p12 siap diunduh

Untuk melakukan impor, lakukan tahap berikut:

  • Pilih Certificate Authorities dari administrator menu.
  • Pilih tombol import CA keystore
  • Isi Form yang muncul. Beberapa hal yang harus diisi adalah nama CA yang akan diimpor, path file PKCS#12, keystore password.
  • Isi Alias of signature key dengan SignatureKeyAlias
  • Isi Alias of encryption key dengan EncryptionKeyAlias
  • Kalau sudah, tekan tombol Import CA keystore
Impor CA Keystore
Isi form sesuai dengan yang saya tuliskan di atas
Setelah menekan tombol import CA keystore, CA pun akan muncul

Renew CA

Kita bisa me-renew CA dengan 2 cara yaitu:

  • Hanya me-renew sertifikatnya saja, menggunakan key yang sama.
  • me-renew sertifikat dan key-nya.

Untuk me-renew hanya sertifikat CA dengan menggunakan key yang sama, cukup tekan Renew CA. CA harus dalam keadaan on-line sehingga CA bisa memberi sign atas terbitnya sertifikat baru tersebut jika CA tersebut merupakan self signed atau CA bisa menandatangani permintaan sertifikat baru jika itu adalah SUBCA. 

Jika permintaan sertifikat ini adalah untuk SUBCA dengan ROOTCA yang berada dalam satu EJBCA, ROOTCA harus dalam keadaan on-line.

Pilih CA yang ingin di renew sertifikatnya
Biarkan Next CA Key berisi Key yang lama dan tekan renew CA
Renew Sertifikat CA berhasil

Untuk me-renew CA keys, atur Next CA key dengan Generate new key using KeySequence. kalau sudah, maka kita hanya perlu menekan tombol Renew CA. Proses renew key ini tidak selalu berhasil jika kita menggunakan HSM. Bisa saja cara ini berguna bagi suatu HSM tapi tidak dengan yang lainnya. (silahkan melapor ke EJBCA kalau terjadi kegagalan).

Ketika menggunakan HSM, kita bisa me-renew key secara manual. Caranya cukup men-generate key baru di HSM dengan menggunakan tools apapun yang kita gunakan di awal (lebih baik menggunakan EJBCA CLI Tools) dan memilih key baru sebagai Next CA Key. Tekan tombol Renew CA untuk men-generate sertifikat CA yang baru.

Pilih Generate Key Using new Sequence
Renew Key CA berhasil
Sekarang CA sudah menggunakan Key baru

Remove and Restore CA Soft Keystore

Soft Token CA bisa dihapus dari database. Ketika keystore dihapus, CA tidak bisa mengeluarkan sertifikat dan status CA Token menjadi offline.

Untuk menghapus catoken keys dari CA imporCA, jalankan perintah berikut pada direktori $EJBCA_HOME:

$ sh bin/ejbca.sh ca removekeystore imporCA
remove keystore
Status CA berubah offline

Untuk me-restore catoken key kembali, dengan menggunakan file .p12 yang sudah diekspor sebelumnya, jalankan perintah berikut pada direktori $EJBCA_HOME:

$ sh bin/ejbca.sh ca restorekeystore imporCA /home/jboss/imporCA.p12 -s SignatureKeyAlias -e EncryptionKeyAlias
restore keystore
Untuk mengaktifkan kembali status yang offline, centang keepactive dan healthcheck lalu tekan apply

Revoke CA

Jika kita ingin me-revoke sebuah CA, kita hanya perlu mengaahkan kursor ke Certification Authorities yang ada pada admin GUI. Pada CA yang kamu inginkan, tekan edit dan pada bagian CA Life Cycle, Pilih revoke.

ImporCA masih berstatus aktif dan kita akan mengeditnya
Revoke CA dengan alasan Key telah dicuri
statusnya sekarang sudah di revoke

Ketika melakukan revoke, ada beberapa hal yang perlu diperhatikan:

  • Jika kita me-revoke ROOTCA, maka kita akan me-revoke semua sertifikat yang ada di database yang dikeluarkan oleh ROOTCA tersebut, dan membuat CRL.
  • Jika kita me-revoke SUBCA, maka kita akan me-revoke semua sertifikat di database yang dikeluarkan oleh SUBCA tersebut, SUBCA itu sendiri dan membuat CRL. Ini terjadi secara otomatis jika SUBCA dan ROOTCA ditangani oleh instance EJBCA yang sama. Jika SUBCA ditandatangani oleh external CA, sertifikat SUBCA harus di-revoke oleh external CA yang menandatanganinya.
  • Jika kita me-revoke external CA, sertifikat dari external CA tersebut akan di-revoke dan ditempatkan pada CRL dari CA yang menerbitkannya.

Yup, itu tadi sedikit tulisan mengenai cara mengelola CA pada EJBCA 6.10.1.2. Semoga bisa membantu ya 🙂

sumber: EJBCA Docs

Facebook Comments Box

Comments are closed.