Signing External CA di EJBCA 6.15.2.6

Hai, semua. Wah, akhirnya gue nulis lagi nih setelah cukup lama nggak menulis.  Pada kesempatan kali ini gue mau berbagi cara untuk menandatangani external ca di EJBCA 6.15.2.6.

Jadi kalau biasanya kalian membuat sebuah hierarki CA (RootCA → SubCA) pada EJBCA yang sama, nah kali ini kita akan mencoba untuk membuatnya pada EJBCA yang berbeda. Si SubCA akan berada di VM yang berbeda dan diterbitkan sertifikatnya oleh RootCA di VM yang satunya lagi.

Tanpa berlama-lama lagi, langsung aja yuk masuk dimulai tutorialnya.

Alat dan Bahan

Kalian membutuhkan 2 EJBCA server yang terpisah, dengan detil:

  1. Server RootCA yang sudah terpasang EJBCA dan RootCA (D Root CA G1). *Selanjutnya akan disebut Server A*
  2. Server SubCA yang sudah terpasang EJBCA dan akan dibuat SubCA (External CA). *Selanjutnya akan disebut Server B*

Bagi yang belum tahu cara melakukan instalasi EJBCA, kalian bisa membacanya DI SINI. Dan untuk kalian yang sudah melakukan instalasi EJBCA tapi belum membuat RootCA-nya, kalian bisa membaca cara membuat RootCA DI SINI.

Tahapan

Pada Server B
  1. Masuk ke bagian Administration dari EJBCA dan buat sebuah SubCA. Langkahnya:
    • Pilih: Certification Authorities
    • Masukkan nama SubCA yang akan dibuat pada textbox Add CA. (Pada kesempatan kali ini namanya: D Issuing CA X1)
    • Tekan: Create

      Membuat SubCA dengan nama: D Issuing CA X1
  2. Pilih subCA yang baru saja dibuat dan klik Edit CA.
  3. Silakan isi parameter-parameter yang sudah disediakan oleh EJBCA. Namun yang harus diperhatikan adalah di bagian Certificate Data. Usai memasukkan Subject DN (CN=D Issuing CA X1), isi Signed By dengan External CA. Bagian inilah yang menerangkan ke EJBCA kalau kita mau membuat sebuah CA yang ditandatangani oleh external CA.
    Signed By: External CA

    Untuk bagian CA Serial Number Octet Size, kalian bisa mengisinya dengan nilai 4-20. default 20.

  4. Perikutnya perhatikan bagian Externally signed CA creation/renewal. Pada tahap ini, kalian akan menekan tombol Make Certificate Request untuk membuat sebuah CSR (Certificate Signing Request).

    Membuat CSR untuk SubCA
  5. Bila sukses, maka akan tampil halaman Certificate Request Generated yang berisi barisan karakter dari request tersebut. Ada 3 pilihan cara menyimpan CSR tersebut. Pertama adalah dengan meng-copy baris karakter CSR tersebut. Kedua adalah dengan menekan tombol Download PEM file untuk mengunduhnya menjadi sebuah PEM File. Terakhir adalah dengan menekan tombol Download binary file  untuk mengunduhnya menjadi sebuah file binary.
    Pilih yang mana saja. Kalau saya memilih mengunduhnya dalam bentuk PEM File.

    CSR sudah terbuat. Silakan pilih cara menyimpan yang disuka
  6. Ini tampilan file jika kalian memilih untuk mengunduh, baik dalam bentuk PEM atau binary file.
    hasil unduhan file PEM dan Binary

    Simpan file tersebut dengan baik

Pada Server A

Membuat Certificate Profiles

  1. Untuk menandatangani sebuah sertifikat SubCA yang akan diterbitkan, kalian harus terlebih dahulu membuat certificate profiles-nya. Langkahnya:
    • Masuk ke halaman: Administration
    • Pilih: Certificate Profiles
    • Pada bagian templat SUBCA, pilih Clone.
    • Ubah nama template sesuai dengan yang kalian inginkan. Dalam hal ini saya memberi nama D_SUBCA_G1
    • Tekan: Create from template

      Membuat Certificate Profile dari template SUBCA
  2. Bila sudah, edit template tersebut dengan memilih tombol Edit yang tersedia di sebelah nama template.

    Edit Template
  3. Silakan isi beberapa detail yang diinginkan. Namun yang perlu diperhatikan adalah pada bagian Available CAs. Pilih Root CA yang sudah berhasil kalian buat sebelumnya. Pada kesempatan kali ini saya memilih RootCA yang saya buat dengan nama D Root CA G1. Kemudian tekan Save.
    Silakan diisi sesuai keperluan

    Pilih RootCA yang sudah kalian buat

Membuat End Entity Profiles

Profile sertifikat sudah dibuat, sekarang waktunya untuk membuat profile bagi entitas akhir. Langkahnya:

  • Pilih: End Entity Profiles
  • Pada bagian Add Profile, isikan nama Profile pada bagian text box dan kemudian tekan tombol Add. Dalam hal ini saya memberi nama SubCA Profile.

    Menambahkan End Entity Profiles
  • Berikutnya adalah dengan mengedit End Entity Profile tersebut.

    Edit End Entity Profile
  • Perhatikan pada bagian Main Certificate Data. Pastikan Pilihannya sebagai berikut:
    • Default Certificate Profile: D_SUBCA_G1 (Certificate profile yang tadi baru dibuat)
    • Available Certificate Profiles: D_SUBCA_G1
    • Default CA: D Root CA G1 (Root CA yang kalian buat dan akan digunakan untuk menandatangai penerbitan sertifikat)
    • Available CAs: D Root CA G1
    • Default Token: User Generated
    • Available Token: Semua

      Isi Main Certificate Data

Menambahkan End Entity

  1. Sekarang waktunya menambahkan End Entity. Pilih Add End Entity pada sidebar.
  2. Isi dengan:
    • End Entity Profile: SubCA Profile (profil yang baru saja dibuat)
    • Username: XSubca1 (ini bebas)
    • Password: xxxxxxx (Ini bebas. Digunakan sebagai salah satu syarat men-generate sertifikat)
    • Confirm Password: <sama dengan password>
    • Email: xxxx@xxx.com (bebas)
    • CN: D Issuing CA X1 (Ini wajib sama isinya dengan CN saat membuat SubCA)
    • Certificate Profile: D_SUBCA_G1
    • CA: D Root CA G1
    • Token: User Generated

      Isian untuk membuat End Entity

      Tekan Add apabila sudah yakin dengan isian yang dibuat.

Menerbitkan Sertifikat 

  1. Untuk menerbitkan sertifikat, akses halaman utama EJBCA.
  2. Pilih: Create Certificate From CSR
  3. Perhatikan bagian Enroll. Isi dengan:
    • Username: XSubCA1 (Sama dengan username saat menambahkan End Entity)
    • Enrollment Code: xxxxxxxxx (password yang dibuat saat menambahkan End Enitity)
    • Request File: <Upload CSR yang tadi berhasil diunduh, baik dalam bentuk PEM atau Binary>
    • Result type: PEM – Certificate Only
    • OK

      Proses menerbitkan sertifikat dari CSR
  4. Bila sertifikat berhasil terbit, tampilan Certificate Created akan muncul dan sertifikat otomatis terunduh dengan nama: <cn>.pem. Simpan sertifikat tersebut karena akan digunakan kembali di server B.
    Certificate Created

    Dari tampilan di atas dapat terlihat kalau CA Issuing CA X1 sudah berhasil diterbitkan sertifikatnya oleh D Root CA G1.

    Tampilan Sertifikat yang berhasil dibuat
Kembali ke Server B
  1. Masih ada proses yang belum selesai di Server B. Untuk itu, setelah penerbitan sertifikat, kalian harus kembali lagi ke server B. Masuk ke halaman Administration lalu pilih Certificate Authorities.
  2. Di halaman ini dapat terlihat kalau SubCA yang tadi kita buat memiliki keterangan waiting for Certificate Response. Pilih CA tersebut dan Edit CA

    CA yang dibuat sedang menunggu tanggapan selanjutnya. Yuk diedit CAnya
  3. Langsung ke bagian bawah, perhatikan Externally signed CA creation/renewal. Pada tahap 2 – Import Certificate, unggah PEM file yang sudah di-sign RootCA dengan menekan tombol Choose File. Setelah file PEM diunggah, tekan tombol Receive Certificate Response.

    Mengunggah File Certificate milik SubCA yang sudah ditandatangani RootCA
  4. Jika sukses, tampilan yang muncul adalah seperti berikut:

    CA sudah berhasil diaktifkan

******

Itu tadi cara menandatangani External CA. Semoga tulisan di atas dapat membantu ya. Sampai jumpa di tutorial berikutnya.

Catatan

Perhatikan setiap detail yang dimasukkan saat menambahkan End Entity di RootCA. Pada bagian Subject DN attributes, pastikan semua field-nya tersedia dan diisi sama dengan yang diiinputkan ketika membuat SubCA.

Jika ada perbedaan sedikit saja, proses import sertifikat yang sudah ditandatangani RootCA ke dalam SubCA akan gagal.

Contoh proses impor yang gagal karena nama Suject DN tidak sama. Hal ini menyebabkan SubCA statusnya belum aktif

Troubleshooting

Ada kalanya sertifikat yang harus diimpor (yang sudah ditandatangani oleh External CA) haruslah dalam format fullchain (Bukan certificate only seperti yang sudah saya contohkan). Bila sudah terlanjur mengunduh sertifikat dalam format PEM-certificate only dan ingin menjadikannya fullchain, caranya adalah menggabungkan sertifikat tersebut dengan sertifikat milik RootCA. Tahapannya:

  1. Masuk ke halaman paling depan dari EJBCA.
  2. Pada bagian Retrieve, pilih Fetch CA Certificates.
  3. Pilih RootCA yang sudah kalian gunakan untuk menandatangani SubCA dan pada bagian CA Certificates, tekan Download as PEM

    Unduh sertifikat RootCA
  4. Tahapan berikutnya adalah dengan menggabungkan sertifkat RootCA yang baru kalian unduh dengan milik SubCA yang sudah diunduh sebelumnya. Caranya:
    cat sertifikatrootCA.pem sertifikatsubCA.pem > sertifikatfullchain.pem
  5. file sertifikatfullchain.pem itulah yang nantinya kalian unggah ke halaman EJBCA dari subCA.
Facebook Comments Box