bg-tutorials

Cara Menginstal Sertifikat SSL di GlassFish

Dalam tutorial ini, Anda akan belajar cara menginstal sertifikat SSL di GlassFish (sekarang Eclipse GlassFish) menggunakan utilitas Java keytool dan baris perintah asadmin.

Membuat kode CSR untuk GlassFish

Langkah pertama saat memesan sertifikat SSL adalah membuat CSR (Certificate Signing Request) dan mengirimkannya ke Certificate Authority (penyedia SSL Anda). CSR adalah blok teks yang berisi detail tentang situs web dan organisasi Anda. CA menggunakannya untuk memverifikasi identitas Anda, sehingga jika CSR mengandung informasi yang salah atau sudah usang, CA tidak akan menandatangani sertifikat Anda.

Di GlassFish, CSR dibuat dengan keytool dari sebuah Java keystore, dan keystore yang sama tersebut menyimpan private key yang akan Anda gunakan kembali saat instalasi. Anda memiliki dua opsi:

Anda dapat membuka file CSR Anda dengan editor teks apa pun (misalnya, Notepad). Sebelum mengirimkannya ke CA Anda, kami menyarankan pemeriksaan terakhir untuk mencari kesalahan penulisan atau kesalahan lainnya. Gunakan alat pendekode CSR kami untuk memeriksanya.

Bergantung pada jenis validasi sertifikat Anda, penerbitan memakan waktu mulai dari beberapa menit hingga beberapa hari kerja. Setelah file SSL tiba di kotak masuk Anda, lanjutkan dengan instalasi di bawah ini.

Menginstal sertifikat SSL di GlassFish

Ide utama di balik instalasi GlassFish adalah bahwa sertifikat yang telah ditandatangani harus terhubung dengan private key yang dibuat bersama CSR Anda. Anda melakukan ini dengan mengimpor rantai sertifikat dan sertifikat yang telah ditandatangani ke dalam keystore yang sudah memuat key tersebut, yaitu keystore yang sama yang Anda gunakan untuk membuat CSR.

Langkah 1: Ekstrak file sertifikat Anda

CA Anda mengirimkan sertifikat melalui email ke alamat yang Anda berikan, biasanya dalam bentuk arsip ZIP. Ekstrak arsip tersebut. File-file tersebut tiba dalam salah satu dari dua format berikut:

  • PEM: file terpisah, biasanya berupa .crt (sertifikat server Anda) dan .ca-bundle (sertifikat root dan intermediate).
  • PKCS#7: satu file .p7b (atau .cer) yang sudah menggabungkan sertifikat Anda bersama seluruh rantai sertifikat.

Langkah 2: Unggah file SSL ke server GlassFish Anda

Unggah file yang telah diekstrak ke server, ke dalam direktori yang sama dengan keystore yang Anda gunakan untuk membuat CSR (disebut di bawah sebagai mykeystore.jks). Format PEM memerlukan dua perintah impor; PKCS#7 hanya memerlukan satu. Pilih format yang sesuai dengan file Anda.

Format PEM. Impor bundel CA terlebih dahulu agar keytool dapat membangun rantai kepercayaan yang lengkap, lalu impor sertifikat server Anda. Impor bundel CA dengan:

keytool -import -trustcacerts -alias ca -file file.ca-bundle -keystore mykeystore.jks

Gunakan nama apa pun yang Anda inginkan untuk alias entri rantai ini (di sini, ca), selama namanya berbeda dari alias private key Anda. Selanjutnya, impor sertifikat server yang telah ditandatangani ke dalam alias private key yang sudah ada, yaitu alias yang Anda gunakan saat membuat CSR:

keytool -import -trustcacerts -alias myalias -file file.crt -keystore mykeystore.jks

Di sini, myalias harus merupakan alias yang sudah menyimpan private key Anda. Karena alias tersebut memiliki key, keytool memperlakukan impor ini sebagai certificate reply dan mengikat sertifikat yang telah ditandatangani ke key tersebut. Inilah langkah yang membuat HTTPS berfungsi; lihat peringatan di bawah.

Format PKCS#7. File .p7b sudah berisi rantai sertifikat lengkap, sehingga satu perintah saja dapat mengimpor semuanya sekaligus, lagi-lagi ke dalam alias private key:

keytool -import -trustcacerts -alias myalias -file file.p7b -keystore mykeystore.jks

keytool akan meminta kata sandi keystore Anda. Seperti di atas, myalias harus sesuai dengan alias private key Anda yang sudah ada. Jika Anda tidak mengingat aliasnya, tampilkan daftar isi keystore:

keytool -list -v -keystore mykeystore.jks

Cari entri dengan tipe PrivateKeyEntry; alias tersebut adalah alias tempat sertifikat yang telah ditandatangani harus diimpor.

⚠️ Kesalahan kritis: jangan mengimpor sertifikat yang telah ditandatangani ke dalam alias baru. Jika alias tersebut tidak memiliki private key yang sudah ada, keytool akan menyimpan sertifikat sebagai entri tepercaya tersendiri tanpa key yang terhubung, dan TLS akan gagal. Selalu impor certificate reply ke dalam alias yang sudah menyimpan key tersebut (alias default GlassFish: s1as).

Langkah 3: Impor ke keystore default GlassFish

Setelah sertifikat Anda siap, impor keystore Anda ke dalam keystore default GlassFish. Pada instalasi default, keystore ini berada di direktori config domain, misalnya glassfish/domains/domain1/config/keystore.jks (versi GlassFish 4 yang lebih lama menempatkan ini di dalam folder utama glassfish4/). Truststore yang sesuai adalah cacerts.jks di direktori yang sama.

Catatan: GlassFish membuat domain1 secara default. Jika Anda menambahkan domain sendiri, gunakan direktori domain tersebut sebagai gantinya.

Impor keystore Anda ke dalam keystore GlassFish dengan:

keytool -importkeystore -srckeystore mykeystore.jks -destkeystore keystore.jks

Langkah 4: Samakan kata sandi keystore

Kata sandi untuk keystore GlassFish harus sama dengan master password GlassFish untuk domain tersebut. Jika master password, kata sandi keystore, dan kata sandi private key tidak semuanya sama, GlassFish tidak dapat membuka key tersebut dan sertifikat SSL Anda tidak akan berfungsi. (Pada domain baru, kata sandi keystore default adalah changeit.)

Langkah 5: Perbarui konfigurasi GlassFish Anda

Setelah impor berhasil, arahkan HTTPS listener GlassFish ke sertifikat Anda agar server menyajikan sertifikat baru tersebut, bukan sertifikat self-signed default. Anda dapat melakukan ini dari browser melalui GlassFish Administration Console, atau secara manual dengan mengedit domain.xml.

Opsi A: Administration Console. Pertama, aktifkan secure administration untuk domain tersebut:

asadmin enable-secure-admin

Mulai ulang domain GlassFish (default-nya adalah domain1) agar perubahan diterapkan:

asadmin restart-domain domain1

Sekarang buka konsol di https://yoursite.com:4848. Abaikan peringatan sertifikat self-signed dan lanjutkan. Arahkan ke Configurations > server-config > HTTP Service > HTTP Listeners > http-listener-2.

Buka tab SSL dan, pada kolom Certificate Nickname, masukkan alias sertifikat Anda (sama dengan alias keystore Anda). Kemudian beralih ke tab General dan ubah port listener menjadi 443. GlassFish menggunakan 8181 untuk HTTPS secara default. Simpan perubahan Anda.

Terkadang tidak semua referensi konfigurasi diperbarui ke alias baru di konsol. Jika hal ini terjadi, selesaikan perubahan tersebut secara manual di domain.xml (Opsi B).

Opsi B: Edit domain.xml. File domain.xml berada di direktori config yang sama, misalnya glassfish/domains/domain1/config/domain.xml. Untuk pengeditan yang aman, hentikan domain terlebih dahulu:

asadmin stop-domain domain1

Buka domain.xml di editor teks dan gunakan Find (Ctrl+F) untuk mencari s1as, alias sertifikat default GlassFish. Ganti setiap kemunculan s1as dengan alias sertifikat Anda (dalam panduan ini, myalias). Memperbarui semuanya juga akan mengamankan Administration Console dengan sertifikat Anda.

Simpan domain.xml dan jalankan domain tersebut kembali:

asadmin start-domain domain1

Selamat, sertifikat SSL Anda sekarang telah terinstal di server GlassFish Anda.

Uji instalasi SSL Anda

Setelah menginstal sertifikat, jalankan SSL checker kami untuk memeriksa status instalasi Anda. Pemindaian instan ini akan mengungkap kesalahan atau kerentanan (seperti sertifikat intermediate yang hilang atau rantai yang tidak tepercaya) yang dapat memengaruhi cara browser memperlakukan sertifikat Anda.

Di mana membeli sertifikat SSL untuk GlassFish?

Tempat terbaik untuk membeli sertifikat SSL untuk GlassFish adalah SSL Dragon. Kami menawarkan beberapa harga terendah di pasaran dan diskon rutin di seluruh rangkaian produk SSL kami, serta telah bekerja sama dengan merek SSL terbaik di industri ini untuk enkripsi yang kuat dan dukungan khusus. Semua sertifikat SSL kami kompatibel dengan GlassFish.

Untuk membantu Anda memilih, kami membuat dua alat gratis. SSL Wizard kami hanya membutuhkan beberapa detik untuk menemukan penawaran SSL terbaik untuk proyek dan anggaran Anda.

Pertanyaan yang Sering Diajukan

Apa keystore dan alias default di GlassFish?

Sebuah domain GlassFish dilengkapi dengan dua file JKS di direktori config-nya: keystore.jks, yang menyimpan private key, dan cacerts.jks, truststore untuk sertifikat CA tepercaya. Keduanya berada di domains/domain1/config/ secara default. Alias sertifikat default yang digunakan oleh secure HTTP listener adalah s1as, dan kata sandi keystore default adalah changeit.

Mengapa sertifikat SSL GlassFish saya tidak berfungsi setelah diimpor?

Penyebab umumnya adalah mengimpor sertifikat yang telah ditandatangani ke dalam alias baru, bukan alias yang sudah menyimpan private key Anda. keytool kemudian menyimpannya sebagai entri sertifikat tepercaya tanpa key, sehingga GlassFish tidak dapat menyelesaikan TLS handshake. Impor ulang certificate reply tersebut ke dalam alias private key yang sudah ada (default s1as). Penyebab paling umum kedua adalah ketidaksesuaian kata sandi; keystore, key, dan master password domain harus sama semuanya.

Apakah saya harus mengimpor bundel CA atau sertifikat terlebih dahulu?

Impor bundel CA (sertifikat root dan intermediate) terlebih dahulu, sebagai entri tepercaya. Ini memungkinkan keytool membangun rantai lengkap saat Anda kemudian mengimpor sertifikat server yang telah ditandatangani ke dalam alias private key. Dengan file PKCS#7 (.p7b), rantai sertifikat sudah tergabung, sehingga satu impor saja sudah menangani semuanya.

Bagaimana cara memulai ulang GlassFish setelah mengubah konfigurasi SSL?

Jalankan asadmin restart-domain domain1 untuk menerapkan perubahan dalam satu langkah, atau hentikan dan mulai domain secara terpisah dengan asadmin stop-domain domain1 diikuti dengan asadmin start-domain domain1. Mulai ulang diperlukan setelah mengaktifkan secure admin dan setelah mengedit domain.xml.

Port mana yang digunakan GlassFish untuk HTTPS?

Secara default, secure listener (http-listener-2) menggunakan port 8181, dan Administration Console menggunakan port 4848. Untuk menyajikan HTTPS pada port standar, ubah port listener menjadi 443 di Admin Console atau di domain.xml.

Hemat 10% untuk Sertifikat SSL saat memesan hari ini!

Penerbitan cepat, enkripsi kuat, kepercayaan peramban 99,99%, dukungan khusus, dan jaminan uang kembali 25 hari. Kode kupon: SAVE10

Ditulis oleh

Penulis konten berpengalaman yang berspesialisasi dalam Sertifikat SSL. Mengubah topik keamanan siber yang rumit menjadi konten yang jelas dan menarik. Berkontribusi untuk meningkatkan keamanan digital melalui narasi yang berdampak.