|

Mengaktifkan HTTPS di OpenLiteSpeed

Yang kadang datang ke blog Servernesia mungkin sadar ada hal baru didalamnya. 🙂 Saya sudah berhasil memasangkan sertifikat SSL dan sekarang sudah muncul gembok hijau dalam browser. Hehe. 😛 Asli saya tidak ada rencana sebenarnya, tapi karena iseng kemarin sore dan agak menyesal kok ternyata tidak semudah itu juga cara settingnya di OpenLiteSpeed. Haha. 😀 Nah… saya catatkan bagaimana langkah – langkah saya mengaktifkan HTTPS di OLSWS ini sebagai dokumentasi pribadi, dan siapa tahu berguna menjadi panduan anda.

Jadi seperti kita tahu HTTPS adalah protokol HTTP yang sudah diamankan dengan cara enkripsi, sehingga komunikasi antara server dengan pengunjung akan dienkripsi sehingga tidak bisa disadap atau dibajak. Anda pernah mendapatkan injeksi iklan dari Telkom saat browsing? Dengan ini maka bisa diatasi karena tidak bisa dimodifikasi dan teknik lain semacamnya juga tidak mempan.

Persiapkan sertifikat SSL untuk website anda

Jadi awalnya memang ingin tahu tentang memasang SSL di situs WordPress saya ini, tapi yang saya incar sebenarnya adalah sertifikat SSL gratis dari Let’s Encrypt dan sayangnya belum ada tutorial atau kompatibilitas dengan OpenLiteSpeed. Ya saya urungkan niatnya. Beralih ke lain hati yang juga menyediakan gratisan: WoSign Free SSL Certificates. 😉 Cara mendapatkannya mudah kok, tapi anda harus membuat CSR (Certificate Signing Request) dan upload ke WoSign saat memintanya. Tips: WoSign meminta anda mengosongkan Organization Unit dan Email saat membuat CSR, jangan lupa ya karena nanti akan gagal kalau tidak sesuai yang diharapkan.

Hasilnya nanti didalamnya akan ada beberapa file ZIP berisi file sertifikatnya dan untuk jenis web server apa (Apache, Nginx, IIS, dan lainnya), saya mengambil yang untuk Apache karena sudah standar.
WoSign Free SSL Certificate Zip file

Diekstrak ya dan biarkan dulu dalam satu folder, mestinya ada 2 file: 1_root_bundle.crt dan 2_servernesia.com.crt. Ini yang nantinya akan diupload dan dibaca oleh OpenLiteSpeed. Oh ya, saya masih menggunakan yang OpenLiteSpeed 1.3.12 kalau milik anda versinya lain bisa diadaptasikan.

Utak – atik SSL di LiteSpeed WebAdmin Console

Akhirnya kita masuk ke fokus cerita. 🙂 Masuk dulu ya ke halaman administrasi OpenLiteSpeed, saya yakin anda sudah paham caranya kalau sudah mencari informasi mengenai setting SSL. Kemudian buka menu Configuration pilih Listener. Bedanya, disini kita akan menambahkan agar OpenLiteSpeed mendengarkan port 443 untuk HTTPS. Jadi klik Add ya.

LiteSpeed WebAdmin Console - Listener

Saya isikan ListenerName dengan nama portnya supaya mudah mengetahui fungsinya apa dan tentu saja portnya isikan 443 juga, berikutnya aktifkan Secure menjadi Yes. Sekalian arahkan virtual host agar mengarah ke website yang diinginkan.

LiteSpeed WebAdmin Console - Listener General Settings

Selanjutnya pindahkan ke tab SSL, didalamnya bagian SSL Private Key & Certificate letakkan lokasi dari file Private Key dari sertifikat SSL anda dan lokasi sertifikat SSLnya. Bisa anda isi dengan variabel atau dengan alamat absolut, saya menggunakan lokasi /usr/local/lsws/conf/cert/ untuk menyimpan file – file yang berhubungan.

LiteSpeed WebAdmin Console - Listener SSL Settings

Nah… kita modifikasi sedikit bagian SSL Protocolnya agar mengaktifkan TLS v1.0, TLS v1.1, dan TLS v1.2. SSL 3.0 biarkan nonaktif karena sudah tidak didukung lagi. Terakhir isikan Cipher dengan teks berikut: CDHE-RSA-AES128-SHA256:HIGH:!MD5:!aNULL:!EDH.

Selesai sudah urusan kita di Listener, sedangkan masalah protokol SPDY (Speedy) dan HTTP2 akan menyusul kemudian. Juga OSCP Stapling. Kedua hal ini sebenarnya akan membantu mempercepat akses konten website, tapi ada pengaturan lebih lanjutnya. Sedangkan target kita kali ini hanya mengaktifkan HTTPS.

Utak – atik Virtual Host untuk Rewrite URL

Tahap selanjutnya adalah mengakses konfigurasi Virtual Host dari website yang dipasangkan SSLnya, tapi urusannya jauh lebih mudah karena kita cuma mengalihkan trafik HTTP menjadi HTTPS. Masuk ke menu Configuration dan pilih Virtual Hosts, klik View/Edit pada situs anda.

LiteSpeed WebAdmin Console - Virtual Hosts

Tambahkan kode berikut pada bagian Rewrite:

#Pengalihan otomatis dari HTTP ke HTTPS
RewriteCond %{HTTPS} !on
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

#Pengalihan URL www menuju non-www dan HTTPS
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^(.*)$ https://%1%{REQUEST_URI} [L,R=301]

Posisikan paling atas ya, kalau ada kode rewrite permalink WordPress seperti milik saya maka geser saja ke bagian terbawah. Ini tampaknya sepele tapi saya sempat frustasi beberapa jam dan kemudian ditinggal tidur karena redirect HTTP ke HTTPS kadang bisa kadang tidak. Jadi tidak semuanya dialihkan, urutan proses URL sangat berpengaruh disini.

Selesai semua akhirnya. Baru anda silahkan restart OpenLiteSpeednya, klik Graceful Restart. Setelah itu silahkan anda uji coba mengakses beberapa url dari website anda, semestinya semua akan menggunakan HTTPS. Yeah… gembok hijau dengan manisnya muncul. 😀

WoSign Free DV SSL aktif

Penutup

Kabarnya kalau website menggunakan SSL akan memiliki pengaruh baik terhadap SEO? Saya tidak tahu dan kalau benar bisa dianggap bonus. Hehe. 😀

Tapi gara – gara ini saya terpaksa melepaskan Incapsula karena untuk versi gratisnya tidak mendukung SSL. 🙁 Ya ada plus minusnya lah. Mungkin beralih ke CloudFlare bila perlu karena mereka memberikan SSL gratis juga.

Agak menyesal juga berusaha mengurus SSL di OpenLiteSpeed karena hampir seharian saya mencari inspirasi kok gagal terus, dokumentasinya kurang terutama di bagian Cipher dan Rewrite URLnya. Jadi harus trial and error berulang kali. Untung akhirnya ketemu kombinasi juaranya. 🙂

24 Comments

    1. Sama – sama Ariq 🙂 Mudah kok aslinya buat ngaktifkan HTTP2, cuma tinggal memberi centang pada halaman Listener > SSL juga, ini juga menambahkan dukungan SPDY2/3. Mungkin tinggal OSCP Stapling saja yang agak beda.

      Mungkin ini cuma perasaan saja tapi memang ada perbedaan setelah menggunakan HTTPS sebagai default dan mengaktifkan HTTP2 bila didukung, lebih responsif. Tidak saya benchmark tapi.

  1. Terimakasih banyak mas,
    Sangat bermanfaat buat saya,
    mudah mudahan Segala ilmu / pengetahuan yang di share disini tuhan membalasnya dengan segala kebaikan, dan Ilmu yang lebih banyak.

    Ditunggu untuk http2 nya ya. 🙂

    1. Sama – sama mas Sakidi. Terimakasih juga untuk doanya. 🙂 Niat saya memang share keputusasaan saya pas belajar VPS ini. Haha. 😀

      Untuk mengaktifkan HTTP/2 atau versi lamanya SPDY itu di OpenLiteSpeed sangat mudah mas. Melanjutkan dari proses diatas ya, langsung beri centang pada SPDY/2, SPDY/3, dan HTTP/2. Setelah itu Graceful Restart. Selesai. Enaknya ada control panel ya begini, tinggal klik – klik saja. 🙂

  2. mas,
    saya sudah selesai semua untuk kerjakan panduan disini.
    Alhamdulillah,
    dari mulai request certypikat sampai aktifkan di vps saya sudah selesai.
    tapi masih belum sukses sepenuhnya di Rewrite URL.
    saya akses http://blogsaya.com masih error 404, sementara kalau saya https://blogsaya.com sudah bisa di akses.
    begitu juga dengan www, yang tampail mpil masih error 404.

    Minta koreksinya ya mas. 🙂

    1. Sep mas. 😀 Sama – sama pakai WoSign mas?

      Seharusnya kalau mas menirukan format rewrite url saya diatas lancar jaya mas. 🙂 Anda benar menambahkan di panelnya kan? Bukan di htaccess.

      Anda pakai WordPress tidak mas? Kalau ya, jangan lupa pada wp-admin ke Pengaturan > Umum dan ganti urlnya dari http ke https mas.

      Anda pakai format www atau non-www mas? Di DNS recordnya? Saya mengarahkan A record langsung ke alamat IP VPSnya dan kemudian CNAME www ke domain utamanya.

      Sementara cuma terpikir perbedaannya di bagian CMS dan DNS record nama domainnya.

  3. waduh… terimakasih mas, senang hati komentar saya naik lagi dan di reply sama penjenengan.
    🙂
    betul mas, saya juga menggunakan WoSign, meski agak tersendat dikarenakan bahasa websitenya,
    Alhamdulillah selesai juga.

    betul saya menggunakan wordpress mas, dan untuk rule nya saya kopas langsung dari tulisan panjenengan. hehe.
    Baik saya coba lagi untuk setting url pada wordpress nya mas.

    sekalilagi terimakasih 🙂

    O, iya saya menggunakan digitalocean mas, dan record dns nya mengarah ke ns provider. ns1.digitalocean ns2.digitalocean danseterusnnya.

    1. Haha 😀 Jangan khawatir mas, pasti saya balas paham tidak paham masalahnya. Saya juga ingin belajar dari orang lain dan semoga bisa share solusinya.

      Oh.. saya asumsikan tingkat kesulitan mendapatkan sertifikat SSL gratisnya biasa saja soalnya mas. Apalagi bagi yang sudah terjun dalam dunia VPS. Mungkin lain kali akan saya perjelas dalam tutorial tersendiri.

      Errornya yakin 404 not found mas? Seharusnya bukan seperti itu sih. Jangan lupa jalankan Graceful Restart mas supaya modifikasi settingnya diterapkan.

  4. Alhamdulillah mas Chandra,
    semua halaman sudah https,
    begitu pun ketika saya ketikan www.blogsaya.com
    Sekarang tinggal saya tes di beberapa browser.

    Terimakasih mas,
    semoga tidak bosen baca posting komentar saya.

    penyelesaiann yang saya lakukan saya install ulang openlitespeednya mas dan baca petunjuk panjenengan perkalimat sambil langsung praktek.
    link

    1. Haha. 😀 Betul mas, kalau mau diperbaiki ga berhasil juga coba install ulang.

      Saya ga bosan kok mas ditanyai, sengaja saya buat blog ini buat share pengalaman dan rasa frustasi pas setting VPS. Haha. 😀 Biar ada yang membaca dan baguslah kalau bermanfaat, atau malah ada yang mengkoreksi. Kan tidak mungkin saya ahli semuanya. Otodidak saya belajarnya.

  5. Saya mengikuti langkah ini, setelah saya test di SSL labs, kok masih kelas F ya mas. protokolnya masih belum beres. Bagaimana ya?

    1. Eh masa mas Subhan? Wah… tahu gitu dulu saya screenshot hasil SSL Labsnya waktu pertama kali sukses ya. 🙁

      Ini cuma dari ingatan mas. Memang pas berhasil setting HTTPS di OpenLiteSpeed gradenya sendiri mungkin B, yang pasti bukan A seperti sekarang ini. Akhirnya saya tambahkan OSCP Stapling dan HTTP/2. Sisanya sama persis dengan tutorial diatas.

      Cipher Suitenya sudah ikut persis mas?

      1. Ada pesan diagnosanya di SSL Labs kenapa kok dapat F mas? Dicopaskan kesini bisa kok.

        Ini versi OpenSSL saya mas di CentOS 6 32-bit:

        openssl version
        OpenSSL 1.0.1e-fips 11 Feb 2013
      2. Pesannya ini mas

        This server is vulnerable to the OpenSSL Padding Oracle vulnerability (CVE-2016-2107) and insecure. Grade set to F.

      3. Loh iya mas, itu karena masih pakai OpenSSL lama. Lebih tepatnya OpenLiteSpeed saat dikompilasi masih memanfaatkan OpenSSL lama. Sudah coba update mas?

  6. Salam kenal Mas Chandra,

    Ini tutorial lama tapi alhamdulillah sangat bermanfaat. Ini salah satu tutorial yang saya pakai untuk install SSL. Oh ya mas, apakah bisa di install banyak SSL di satu server? dengan kata lain shared SSL?

    saya mau aktifin HTTP/2 mas. kerasa banget bedanya. entah kenapa kalau HTTP/2 tanpa SSL saya belum bisa settingannya?

    Mohon pencerahannya mas

    1. Banyak ini satu SSL dipakai banyak domain? Atau masing – masing sertifikat untuk setiap website mas?

      Kalau satu SSL untuk semuanya ya jelas ga mungkin, kecuali jenis subdomain dan sertifikatnya tipe wildcard.

      HTTP/2 tanpa HTTPS secara teori bisa mas, tapi memang sengaja tidak disupport oleh browser supaya komunikasi data defaultnya aman dengan enkripsi. Intinya wajib HTTPS.

  7. bang kalau ssl nya di aktifin di domain utama dan domain utamanya di WordPress saya setting pake www gimana tuh?? berarti tanpa httaccess yang #Pengalihan URL www menuju non-www dan HTTPS kan???

  8. Kalau misal kita akses https:// {ip server vps} pasti error sslnya dan g keredirect ke domain tapi klo http:// {ip server vps} normal dan keredirect itu setingan dimananya ya om? itu berlaku ketika ssl kita g pakai cloudflare, pakai nginx dan openlitespeed sama saja errornya. Mohon pencerahannya om…

    1. Jelas mas, karena sertifikat SSLnya yang terpasang pada alamat IP baik di OpenLiteSpeed dan CyberPanel itu buat sendiri (self cert). Jadi tidak dianggap aman.

      Solusinya mungkin panelnya dibuat hostname (CNAME) ke alamat ip. Jadi bisa diakses normal.

Tinggalkan Balasan ke Ariq Naufal Batalkan balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *