Pertanyaan dari mas Subhan soal gampang mana memasang sertifikat SSL sendiri atau menggunakan miliknya CloudFlare sempat membuat saya mempertimbangkan beberapa metode mengaktifkan HTTPS. Ada yang secara standar lewat web server atau menggunakan layanan online (semacam reverse proxy). Tapi kalau dari kemudahan ya jelas CloudFlare jawabannya.

Bagusnya lagi saat anda menambahkan nama domain dalam CloudFlare maka sebenarnya sudah dibuatkan sertifikat SSLnya dan untuk mengaktifkannya tinggal 1 langkah lagi. Atau lebih tergantung bagaimana setting websitenya, maksud saya apakah masih HTTPS atau sudah HTTPS.

CloudFlare Domain Crypto Settings

Buka saja dasbor CloudFlare anda, klik nama domainnya, dan buka pengaturan Crypto. Tepat diawal anda akan menemukan opsi SSL, dan ada 3 jenis setelan yang bisa anda pilih:

  • Flexible SSL – Ini kalau websitenya masih pakai HTTP.
  • Full SSL – Kalau situs anda sudah menggunakan SSL tapi sertifikatnya boleh self-signed (membuat sendiri).
  • Full SSL (Strict) – Situsnya harus menggunakan sertifikat SSL yang valid.

Selengkapnya bisa baca Help dari CloudFlare untuk topik ini. Saya cuma menyimpulkan saja dan memang ada detail yang tidak diikutkan.

Yang pasti ada setting HSTS… ini harap anda hati – hati memakainya. Jangan diaktifkan dulu kalau belum paham apa gunanya. Soalnya begitu sekali sudah aktif maka selanjutnya anda harus permanen HTTPS terus. Saya pernah tergigit masalah ini karena memang ada manfaat di kecepatan aksesnya, sederhananya dari sisi resolve protokol apa yang akan digunakan untuk tersambung ke web servernya.

Kemudian jangan lupa anda perlu mengalihkan semua trafik dari HTTP ke HTTPS, ini bisa dilakukan lewat konfigurasi web server anda (htaccess, mod_rewrite, location milik Nginx, Rewrite milik LiteSpeed, dan seterusnya), atau lebih optimal lagi menggunakan fitur Page Rules karena akan langsung diproses oleh CloudFlare.

CloudFlare Domain Page Rules Settings

  1. Tinggal anda tambahkan aturan dengan format URL: http://*nama_domain.tld/*.
  2. Settingnya adalah Always Use HTTPS.
  3. Kemudian klik Save and Deploy.

Mestinya saat itu juga kalau anda mengakses situs tersebut masih lewat HTTP akan otomatis diredirect ke versi HTTPSnya. Kalau anda mencobanya pada bare/naked domain (langsung nama_domain.tld) dan tidak langsung dialihkan maka coba cek lagi format URLnya, jangan sampai tertulis http://*.nama_domain.tld/* karena adanya satu titik itu menandakan subdomain dan jelas saja tidak langsung diredirect.

Oh ya, kadang situs gagal terbuka apabila ada kode redirect juga dalam konfigurasi web servernya, seperti dalam htaccess. Ini saya alami pas menggunakan VestaCP. Cek kembali apabila tidak selancar yang saya ceritakan diatas.