Konfigurasi Secure Socket Layer (SSL) | Tomcat Apache

Selamat datang kembali di website asepit yang selalu memberikan informasi mengenai dunia Teknologi khususnya pada bidang Komputer, Pemrograman, dan juga Jaringan. Bagaimana kabar kalian semua mudah - mudahan dalam keadaan sehat wal afiat dan selalu dilancarkan rezekinya, pada kesempatan kali ini saya akan membahas mengenai cara konfigurasi SSL pada Apache Tomcat. Secure Socket Layer atau sering disebut juga SSL merupakan sebuah protokol keamanan berbasis enkripsi yang digunakan untuk melindungi data yang ada di internet, sedangkan Apache Tomcat merupakan sebuah web server sama halnya dengan apache server namun memiliki kelebihan yaitu mendukung aplikasi servlet (sebuah aplikasi Java) yang dijalankan disisi server dengan script yang ditulis menggunakan bahasa Java dan diolah oleh server servlet container dan kemudian menghasilkan tampilan akhir script HTML yang berbeda di web browser. Berikut langkah - langkah konfigurasi dan penginstalan SSL pada Apache Tomcat :

1. Penginstalan OpenJDK disesuaikan dengan sistem operasi yang digunakan (disini saya menggunakan Centos)

yum install java-1.8.0-openjdk -y

Ubuntu

apt-get install openjdk-8-jdk

jika ingin switch k versi lain berikut perintahnya

update-alternatives --set java /usr/lib/jvm/jdk1.8.0_version/bin/java

dan untuk mengecek versi java berikut perintahnya

java -version

2. Generate keystore dan CSR untuk domain yang akan di instal SSL

keytool -genkey -keysize 2048 -keyalg RSA -alias example-domain.com -keystore example-domain.com.jks
Enter keystore password:
Re-enter new password:
What is your first and last name?
  [Unknown]:  example-domain.com
What is the name of your organizational unit?
  [Unknown]:  Information Technology
What is the name of your organization?
  [Unknown]:  ASEP IT
What is the name of your City or Locality?
  [Unknown]:  Jakarta Timur
What is the name of your State or Province?
  [Unknown]:  DKI Jakarta
What is the two-letter country code for this unit?
  [Unknown]:  ID
Is CN=example-domain.com, OU=Information Technology, O=ASEP IT, L=Jakarta Timur, ST=DKI Jakarta, C=ID correct?
  [no]:  yes

Enter key password for <esence.kumisgroup.com>
        (RETURN if same as keystore password):

Warning:
The JKS keystore uses a proprietary format. It is recommended to migrate to PKCS12 which is an industry standard format using "keytool -importkeystore -srckeystore example-domain.com.jks -destkeystore example-domain.com.jks -deststoretype pkcs12".

Lanjut ke pembuatan CSR dan masukkan password yg sebelumnya sudah dibuat

keytool -certreq -keyalg RSA -alias example-domain.com -file example-domain.csr -keystore example-domain.com.jks

3. Cek CSR dan pastikan sudah benar dengan mengunjungi situs ini dan copy syntak pada CSR

cat example-domain.csr

4. Lanjut untuk menyerahkan isi file dari CSR tersebut ke vendor pembelian SSL dan kita akan diberikan file konfigurasi SSL dengan format .zip (example_domain_com.zip)

5. Kemudian kompres file tersebut untuk mendapatkan beberapa file konfigurasi didalam nya

unzip example_domain_com.zip
Archive:  example_domain_com.zip
  inflating: example_domain_com.crt
  inflating: ChainCA1.crt
  inflating: ChainCA2.crt
  inflating: RootCA.crt

6. Lanjut untuk kombinasi semua file menjadi satu dalam file example-domain.com.jks yang telah dibuat sebelumnya, berikut urutan kombinasi file yang berasal dari vendor SSL

RootCA.crt
ChainCA2.crt
ChainCA1.crt
example_domain_com.crt

namun jika file hasil extrak tadi seperti ini kita bisa samakan dengan yang biasa seperti ini

Root AddTrustExternalCARoot.crt            => RootCA.crt
Intermediate CA UTNAddTrustServerCA.crt    => ChainCA2.crt
Intermediate CA PositiveSSLCA.crt          => ChainCA1.crt
domain/site certificate yourdomainname.crt => example_domain_com.crt

Lanjut ke kombinasi

keytool -import -trustcacerts -alias root -keystore example-domain.com.jks -file RootCA.crt

Do you still want to add it to your own keystore? [no]: yes

keytool -import -trustcacerts -alias chainca2 -keystore example-domain.com.jks -file ChainCA2.crt
keytool -import -trustcacerts -alias chainca1 -keystore example-domain.com.jks -file ChainCA1.crt
keytool -import -trustcacerts -alias example_domain_com -keystore example.domain.com.jks -file example_domain_com.crt

Verifikasi SSL apakah sudah terimport dengan benar / belum

keytool -list -v -keystore example-domain.com.jks -storepass masukkanpassword

7. Konfigurasi pada Apache Tomcat dengan masuk ke file server.xml

cd /etc/tomcat7/
vim server.xml

berikut config pada Connectornya

<Connector protocol="HTTP/1.1" port="8443"
               maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" keyAlias="example-domain.com"
                keystoreFile="conf/example-domain.com.jks"
          keystorePass="masukkanpassword"
/>
/etc/init.d/tomcat7 restart

 

Mungkin hanya itu untuk pembahasan kali ini, saya mohon ma'af bila dalam penyampaian serta penulisan terdapat sebuah kesalahan. Jangan lupa ikuti juga platform ASEP IT lainnya dibawah ini, saya cukupkan sekian dan Terima Kasih...

 

Website klik disini
Youtube klik disini
Fans Page klik disini

Related Articles

Comments