Aplikasi web Java Anda yang dihosting di server Tomcat menggunakan protokol HTTP secara default. Komunikasi antara klien dan server web tidak dienkripsi saat protokol HTTP digunakan. Jadi, itu tidak aman.
Saat ini, hampir semua browser akan memperingatkan Anda ketika Anda mencoba mengunjungi tautan HTTP. Itu bahkan akan menunjukkan kepada Anda kunci merah di bilah URL. Jika Anda ingin kunci hijau itu muncul di bilah URL ketika seseorang mengunjungi aplikasi web Java Anda yang dihosting di server web Tomcat, Anda harus mengaktifkan HTTPS di Tomcat. HTTPS hanyalah versi aman dari protokol HTTP. Saat HTTPS diaktifkan, komunikasi antara klien dan server web dienkripsi.
Sertifikat SSL (Secure Socket Layer) digunakan untuk memverifikasi kepemilikan server web yang disambungkan klien menggunakan protokol HTTPS. Anda biasanya membeli sertifikat SSL dari Otoritas Sertifikat atau CA seperti Verisign, DigiCert dll dan menginstalnya di server web Anda (dalam hal ini server web Tomcat). Anda juga dapat membuat sendiri sertifikat SSL dan menginstalnya di server web Tomcat Anda. Sertifikat semacam itu disebut sertifikat yang Ditandatangani Sendiri.
Pada artikel ini, saya akan menunjukkan kepada Anda cara membuat sertifikat SSL atau sertifikat Self-Signed Anda sendiri dan cara menginstalnya di server web Tomcat. Mari kita mulai.
Membuat Sertifikat SSL yang Ditandatangani Sendiri:
Sebelum Anda dapat menginstal sertifikat SSL di server web Tomcat Anda, Anda harus membuat file Java KeyStore atau file JKS. Saat Anda menginstal server web Apache Tomcat, semua alat yang diperlukan untuk menghasilkan file keystore JKS juga diinstal. Anda dapat menggunakan alat kunci utilitas untuk menghasilkan file JKS di Linux.
Saya suka menyimpan semua file kunci yang saya hasilkan dalam satu direktori. Jadi saya akan membuat direktori baru (sebut saja kunci) dalam /etc direktori.
Untuk melakukannya, jalankan perintah berikut:
$ sudo mkdir /etc/keys
Sekarang, navigasikan ke /etc/keys direktori dengan perintah berikut:
$ cd /etc/keys
Sekarang, buat file sertifikat JKS (dengan nama yang sama dengan nama domain Anda) dengan perintah berikut:
$ sudo keytool -genkey -alias tomcat -keyalg RSA -keystorekucing jantan.linuxhint.com.jks
CATATAN: Sini, kucing jantan adalah alias dari file Java KeyStore. Anda dapat mengubahnya menjadi apa pun yang Anda inginkan. Juga, kucing jantan.linuxhint.com.jks adalah nama file sertifikat JKS keluaran.
Sekarang ketikkan kata sandi untuk file Java KeyStore Anda dan tekan
Ketik ulang kata sandi yang sama dan tekan
Sekarang, ketik Fully Qualified Domain Name (FQDN) dari server Tomcat Anda dan tekan
CATATAN: Jika Anda ingin menggunakan nama domain wildcard, Anda dapat melakukannya di sini. Misalnya, Anda dapat mengetik *.domainmu.com; Dalam hal ini, sertifikat ini akan berlaku untuk situs1.domainmu.com, situs2.domainmu.com dan seterusnya.
Sekarang, ketik Unit Organisasi (OU) Anda dan tekan
Sekarang, ketikkan nama Perusahaan atau Organisasi Anda di sini dan tekan
Sekarang, ketikkan nama Kota Perusahaan atau Organisasi Anda dan tekan
Sekarang, ketikkan nama Negara Bagian Kota yang Anda ketik sebelumnya dan tekan
Sekarang ketikkan dua huruf kode negara negara Anda dan tekan
Terakhir, ketik Iya untuk mengonfirmasi bahwa semua informasi sudah benar dan tekan
File sertifikat JKS Anda harus dibuat.
Seperti yang Anda lihat, file kunci JKS (dalam kasus saya kucing jantan.linuxhint.com.jks) dihasilkan dalam /etc/keys direktori.
Di bagian selanjutnya dari artikel ini, saya akan menunjukkan kepada Anda cara menginstal sertifikat yang ditandatangani sendiri JKS di server web Tomcat Anda.
Menginstal Sertifikat SSL yang Ditandatangani Sendiri di Server Web Tomcat:
Sekarang setelah Anda memiliki sertifikat SSL yang ditandatangani sendiri, Anda dapat menginstalnya di server web Apache Tomcat Anda dan mengaktifkan protokol HTTPS dengan sangat mudah. Untuk melakukan itu, Anda harus memodifikasi server.xml file server web Apache Tomcat. Di Ubuntu 18.04 LTS, server.xml file ada di jalur /etc/Tomcat8/server.xml
Sekarang, edit server.xml file dengan perintah berikut:
$ sudo nano /etc/Tomcat8/server.xml
Sekarang, temukan garis seperti yang ditandai pada tangkapan layar di bawah ini.
Di dalam
keystoreFile="PATH_TO_YOUR_JKS_FILE" keystorePass="YOUR_KEYSTORE_PASSWORD"
clientAuth="false" keyAlias="YOUR_KEY_ALIAS" sslProtocol="TLS"/>
CATATAN: Pastikan kamu berubah HTTPS_PORT, PATH_TO_YOUR_JKS_FILE dan YOUR_KEYSTORE_PASSWORD, ANDA_KEY_ALIAS sesuai dengan kebutuhan Anda.
Akhirnya, server.xml file akan terlihat seperti ini seperti yang ditandai pada tangkapan layar di bawah. Simpan file dengan menekan
Sekarang, restart layanan Tomcat dengan perintah berikut:
$ sudo systemctl restart Tomcat8
Sekarang periksa apakah layanan Tomcat berjalan dengan perintah berikut:
$ sudo systemctl status Tomcat8
Seperti yang Anda lihat, layanan Tomcat sedang berjalan. Artinya, konfigurasi berhasil.
Sekarang buka browser web dan coba akses situs web Anda yang dihosting di server web Tomcat. Anda akan melihat peringatan berikut. Klik Maju.
Artinya, sertifikat SSL Anda ditandatangani sendiri. Jika Anda membeli sertifikat SSL dari Otoritas Sertifikat (CA), maka Anda tidak akan melihat ini. Sekarang, klik Tambahkan Pengecualian…
Sekarang, klik Konfirmasi Pengecualian Keamanan.
Seperti yang Anda lihat, itu berhasil. Ikon kunci hijau juga muncul.
Jadi, begitulah cara Anda menginstal sertifikat SSL di server web Tomcat Anda. Terima kasih telah membaca artikel ini.