lifelong learner — urip iku urup, currently working on accenture.

Cara memasang ssl berbayar pada vps untuk ubuntu dengan apache web server

1
Degananda.com -

SSL atau merupakan kependekan dari secure socket layer yaitu proteksi pada level protokol yang digunakan untuk megamankan transaksi yang terjadi disuatu website. Contoh sederhanannya anda memiliki suatu form login diwebsite anda. Dengan adannya SSL maka data yang masuk kedalam form tersebut dan terjadi transaksi(pertukaran data client dengan server) tidak akan dapat di ambil oleh man in the middle atau sniffing sehingga user tidak perlu khawatir untuk kehilangan data pribadi yang di masukan ke website kita.

SSL juga secara langsung berpengaruh pada pagerank atau hasil pencarian di google. Website dengan ssl akan lebih diprioritaskan untuk muncul di search list dibandingkan website tanpa SSL.

jika anda seorang webmaster yang ingin mendapatkan traffic lebih banyak maka pemasangan atau implementasi ssl adalah salah satu cara yang harus dilakukan.

Kebutuhan untuk memasang ssl

ada beberapa hal yang harus anda siapkan untuk mengikuti ulasan ini. Berikut adalah list infrastruktur yang harus dipenuhi.

  1. VPS (Virtual private server). Disini kami menggunakan digital ocean sebagia penyedia VPS. Sistem operasi yang kami gunakan adalah ubuntu 14.04.
  2. Web server yang kami gunakan adalah apache
  3. Domain name. Anda dapat membeli domain name diwebsite favorit anda. Kami menyarankan untuk membelinnya di godaddy.
  4. Seting domain name agar dapat terbind dengan vps anda. Dengan kata lain website anda dapat diakses melalui www.domain.com atau domain.com. Contohnya website ini anda dapat mengaksesnya dengan menggunakan degananda.com ataupun www.degananda.com. Jika anda belum familiar dengan cara setting domain untuk vps silahkan simak ulasan berikut mengenai
    apache setting domain, www dan subdomain (virtualhost) pada ubuntu digital ocean
  5. SSL berbayar. Kami membelinnya melalui namecheap.

jika ke empat hal tersebut telah terpenuhi maka kita telah siap untuk mengimplementasikan ssl kedalam website.

Cara memasang ssl berbayar pada VPS Ubuntu

1. Beli ssl dari Namecheap , anda bebas menggunakan penjual lain.

Disini kami menggunakan possitive ssl yang berharga $8.8 atau jika dirupiahkan sekitar Rp 120.000 (Seratus dua puluh ribu rupiah). Anda harus menggunakan kartu kredit untuk melakukan transaksi melalui namecheap.

jika anda telah sukses dalam membayar positivessl melalui namecheap maka akan muncul gambar seperti dibawah ini.

2. Aktivasi SSL

Secara default ssl memiliki status tidak aktif. Sehingga kita harus melakukan aktivasi ssl tersebut. Pada namecheap anda dapat mengaksesnya disini halaman ProductList/SslCertificates dan kemudian klik tombol aktivasi.

Berikut adalah cara untuk melakukan aktivasi ssl

1. Generate CSR Code

CSR atau certificate signing request(CSR) adalah suatu sertifikat yang digunakan agar suatu program dapat terauthorisasi untuk menjalankan suatu transaksi. Disini kami menggunakan web server apache maka untuk mengenerate CSR membutuhkan openSSL. Jika telah menginstall apache maka tidak perlu lagi melakukan installasi openSSL

Berikut adalah perintah openSSL untuk melakukan generate CSR

openssl req -new -newkey rsa:2048 -nodes -keyout server.key -out server.csr

silahkan replace server.key dan server.csr dengan domain name anda (agar mudah dalam mengingat nama file tersebut adalah csr untuk domain kita). Maka setelah disesuaikan dengan domain degananda.com perintahnya menjadi seperti berikut ini

openssl req -new -newkey rsa:2048 -nodes -keyout deganandacom.key -out deganandacom.csr

silahkan jalankan perintah diatas pada akun root anda (login melalui ssh).

2.1 Detail pembuatan csr

setelah anda menjalankan perintah openssl diatas maka kita akan dimintai beberapa informasi terkait CSR tersebut.

  1. Country code. Kita berada di indonesia maka masukan kode “ID”. Ingat country
  2. State /provice. masukan provinsi.
  3. Locality name , masukan nama kota anda
  4. Organization name, masukan nama organisasi (jika ada). Jika tidak ada maka cukup masukan NA
  5. Organization unit name, masukan nama unit organisasi(jika ada). Jika tidak ada maka cukup masukan NA
  6. Common name, masukan nama domain anda , contoh : degananda.com
  7. email address, masukan email address anda

setelah itu anda akan dimintain password challenge untuk verifikasi. Kurang lebih seperti dibawah ini detail dari CSR.

Jika generate CSR berhasil anda akan mendapatkan dua buah file yakni file.csr dan file.key (private key) sebagaimana anda dapat melihatnya dibawah ini

2.2 Kegunaan sertifikat CSR dan private key

Private key

Sedikit tambahan informasi, private key akan digunakan untuk proses decrypt pada saat session SSL/TLS antara client dan server. Intinnya untu melakukan verifikasi. Private key akan masuk pada header transaksi. Pada header akan nampak seperti berikuit ini

—–BEGIN RSA PRIVATE KEY—–

CSR code

Sedangkan CSR digunakan sebagai sertifikat atau kode untuk dimasukan pada saat proses aktivasi SSL. pada header akan nampak seperti berikut ini.

—–BEGIN CERTIFICATE REQUEST—-

2.3 Aktivasi dengan CSR yang telah tergenerate

anda dapat melihat kode CSR yang berhasil tergenerate dengan menggunakan perintah dibawah ini

cat namafile.csr

setelah anda mendapatkan kode CSR masukan pada halaman untuk melakukan aktivasi SSL. Jika berhasil maka domain name akan secara otomatis terisi sesuai dengan detail CSR anda.

2.3.1 Masukan web server yang anda gunakan

Kami akan memilih apache karena itu adalah web server yang kami gunakan.

2.3.2 masukan email untuk konfirmasi jika kita adalah pemilik domain tersebut

untuk saat ini kami belum memiliki email @degananda.com sehingga cukup gunakan gmail.

2.3.3 masukan company contact

email ini akan digunakan untuk memberikan ssl file.

2.3.4 Lakukan review dan klik submit

jika telah berhasil maka status akan menjadi in progress.

3. Mendapatkan file sertifikat melalui email

Silahkan ikuti instruktsi yang ada pada email anda sesuai dengan email yang anda masukan pada saat melakukan aktivasi SSL. Berikut adalah contoh file ssl yang kami dapatkan

didalam file tersebut akan terdapat empat buah file sebagai berikut ini.

seiring dengan kita mendapatkan file tersebut melalui email maka status dari SSL akan menjadi issued.

4. Setting HTTPS pada apache

Inilah saat yang kita tunggu-tunggu. Kita telah mendapatkan file ssl dan siap digunakan pada web server apache.

Karena kami mendapatkan empat file CA secara terpisah maka harus digabungkan menjadi satu buah file CA. perintah yang digunakan adalah sebagai berikut (jika anda menggunakan linux/mac).

cat COMODORSADomainValidationSecureServerCA.crt COMODORSAAddTrustCA.crt AddTrustExternalCARoot.crt >> bundle.crt

jika berhasil akan terbentuk file bundle.crt yang merupakan gabungan dari tiga file CA tersebut.

4.1 Upload bundle.crt

silahkan upload bundle.crt di folder yang menurut anda aman.

4.2 Konfigurasi ssl.conf

kami menggunakan ubuntu, sehingga lokasi file untuk konfigurasi SSL berada di /etc/apache2/site-available.

disini kami menggunakan apache versi 2.4.7

maka konfigurasi virtualhostnya akan menjadi seperti berikut ini.

ServerName degananda.com
SSLEngine on
SSLCertificateFile /path/domain_com.crt
SSLCertificateKeyFile /path/domaincom.key
SSLCertificateChainFile /root/sslc/bundle.crt
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html

disini kami menggunakan SSLCertificateChainFile karena versi apache dari server kami adalah versi 2.4.7. Jika apache anda telah menggunakan versi 2.4.8 maka ubah SSLCertificateChainFile menjadi SSLCACertificateFile

selanjutnya kita juga perlu menambahkan virtualhost untuk membaca port 80 dan akan mengarahkannya ke https. Tambahkan virtualhost berikut ini di baris paling atas

<VirtualHost *:80>
ServerName degananda.com
Redirect permanent / https://degananda.com/
</VirtualHost>

aktifkan apache ssl mod lalu restart apache dengan menggunakan perintah dibawah ini

sudo a2enmod ssl
sudo service apache2 restart

done kini anda dapat mengakses domain anda dengan https://domainanda.com. Dan juga ketika ada user atau pengunjung yang membuka dengan http://domainanda.com maka akan secara langsung teredirect ke https://domainanda.com.

  • Thanks mas. Lagi cari tutorial setting ssl
    Server digital ocean. Mudah2n bisa…