Terkadang kita mungkin perlu mengimplementasikan sertifikat SSL di Tomcat untuk proyek Java. Menerapkan SSL di Tomcat entah bagaimana berbeda dari menerapkan di server web seperti Nginx, Apache. Pada artikel ini, kita akan belajar cara menginstal sertifikat SSL di Tomcat. Kami berasumsi bahwa Anda telah mengonfigurasi lingkungan Java dan server Tomcat sedang berjalan.
Buat Keystore
Java menyediakan JKS juga dikenal sebagai Java KeyStore sebagai repositori sertifikat keamanan. Baik JDK dan JRE menyediakan alat utilitas baris perintah keytool untuk membuat dan mengelola Keystore. Jalankan perintah berikut untuk membuat KeyStore.
$ keytool -genkey -alias tomcat.linuxways.com -keyalg RSA -keystore /etc/pki/keystore
Buat CSR
Jika Anda akan menginstal sertifikat yang ditandatangani sendiri, Anda dapat menghindari langkah ini. Jika Anda ingin menginstal sertifikat SSL yang dibeli, Anda perlu membuat file CSR.
$ keytool -certreq -keyalg RSA -alias tomcat.linuxways.com -file tomcat.csr -keystore /etc/pki/keystore
Anda akan mendapatkan prompt untuk memberikan kata sandi Keystore. Setelah kata sandi dikirimkan, file CSR akan dibuat. Gunakan file CSR ini untuk membeli sertifikat SSL yang ditandatangani CA.
Dapatkan sertifikat SSL yang ditandatangani CA
Setelah sertifikat dikeluarkan oleh CA, Anda akan memiliki file-file berikut. Sebuah domain (tomcat.linuxways.com) diambil sebagai contoh.
- tomcat.linuxways.com (sertifikat yang diterbitkan CA)
- root.crt (Sertifikat root)
- intermediate.crt (Sertifikat menengah)
Instal sertifikat
Impor sertifikat yang ditandatangani CA menggunakan perintah berikut.
$ keytool -import -alias tomcat.linuxways.com -keystore /etc/pki/keystore -trustcacerts -file path-to-certificate/tomcat.linuxways.com.crt
Di mana jalur menuju sertifikat adalah direktori sertifikat dan Tomcat.linuxways.com.crt adalah sertifikat SSL yang ditandatangani CA.
Instal sertifikat root
Impor sertifikat root menggunakan perintah berikut.
$ keytool -import -alias root -keystore /etc/pki/keystore -trustcacerts -file path-to-certificate/root.crt
Dimana root.crt adalah file sertifikat root.
Instal sertifikat perantara
Jalankan perintah berikut untuk mengimpor file sertifikat perantara.
$ keytool -import -alias intermediateca -keystore /etc/pki/keystore -trustcacerts -file path-to-certificate/intermediateca.crt
Di mana sayantermediateca.crt adalah file sertifikat perantara.
Ubah konfigurasi kucing jantan
Setelah mengimpor semua sertifikat yang diperlukan, sekarang saatnya untuk mengkonfigurasi Tomcat Keystore. Buka folder instalasi Tomcat dan temukan server.xml mengajukan. Perbarui file konfigurasi dengan konten berikut.
$ vi tomcat-installation-directory/config/server.xml
Contoh.
$ vi /opt/tomcat/config/server.xml <Connector port="4443" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="4443" SSLEnabled="true" scheme="https" secure="true" sslProtocol="TLS" keystoreFile="/etc/pki/keystore" keystorePass="_password_" />
Untuk demonstrasi, port 4443 sedang digunakan. Anda dapat memilih port apa saja tergantung pada lingkungan Anda.
Mulai ulang kucing jantan
Instalasi sertifikat telah selesai. Mulai ulang server Tomcat untuk mencerminkan perubahan.
$ path-to-tomcat/bin/shutdown.sh
$ path-to-tomcat/bin/startup.sh
Contoh,
$ /opt/tomcat/bin/shutdown.sh
$ /opt/tomcat/bin/startup.sh
Verifikasi sertifikat
Sekarang akses URL server Tomcat menggunakan browser apa saja untuk memverifikasi sertifikat.
https://tomcat-server:<Port>
Contoh,
https://tomcat.linuxways.com:4443
Kesimpulan
Dalam artikel ini, kami mempelajari cara membuat file CSR dan menginstal sertifikat SSL bertanda tangan CA di proyek Tomcat untuk Java.