Menggabungkan Domain dengan Cloudflare

Setelah Lebaran dan merayakan Idul Fitri di kampung halaman orang tua, ada beberapa hal baru yang terjadi. Salah satunya adalah saya mulai pindah menulis di website pribadi. Sebelumnya saya lebih sering menulis hal-hal tentang IT di Blogspot, sekarang saya coba pindah untuk membuat dokumentasi sendiri di web pribadi. Sekalian juga saya share pengalaman seputar IT, biar kalau nanti lupa bisa dibaca lagi, dan siapa tahu juga bermanfaat buat yang lain.

Untuk ke depannya, website ini akan menjadi portofolio pribadi saya. Saya juga akan rutin menulis di blog ini, serta sedikit demi sedikit memindahkan tulisan yang sebelumnya ada di https://rafiharlianto.blogspot.com/ ke sini.

Di tulisan kali ini, saya mau bahas salah satu step penting yang saya lakukan, yaitu menggabungkan domain dengan Cloudflare. Ini bukan cuma soal “biar bisa diakses”, tapi juga soal keamanan dan performa server.


Apa itu Cloudflare?

Cloudflare adalah layanan yang berfungsi sebagai:

  • CDN (Content Delivery Network)
  • DNS manager
  • Firewall / proteksi website

Secara sederhana, Cloudflare itu jadi “perantara” antara user dan server kita.

Sebelum pakai Cloudflare:

User → VPS langsung

Setelah pakai Cloudflare:

User → Cloudflare → VPS

Artinya:

  • IP asli server kita jadi tersembunyi
  • Request difilter dulu (anti bot, anti DDoS)
  • Website bisa lebih cepat karena caching global

Buat VPS kecil seperti yang saya pakai (1 core, 1GB RAM), ini sangat membantu.


Kenapa Pakai Cloudflare?

Alasan saya cukup simpel:

  • 🔒 Keamanan → banyak bot scan (sudah kelihatan di log)
  • ⚡ Performa → beban server berkurang
  • 🌐 Stabilitas → request difilter sebelum masuk ke server

Tahapan Menggabungkan Domain ke Cloudflare

Saya jelaskan sesuai yang saya lakukan, step-by-step.


1. Tambahkan Domain ke Cloudflare

rafiharlianto.my.id
  • Pilih Free Plan

👉 Untuk kebutuhan pribadi / WordPress, free sudah lebih dari cukup.


2. Cek dan Atur DNS Record

Setelah domain ditambahkan, Cloudflare akan scan DNS.

Yang saya pastikan:

A Record (utama)

Type: A
Name: @
IP: xxx.xxx.xxx.xxx (ip server kalian)

WWW

Type: CNAME
Name: www
Target: rafiharlianto.my.id
Proxy: ON

3. Ganti Nameserver di Domain

Ini bagian yang sering bikin bingung kalau pertama kali.

Cloudflare akan kasih 2 nameserver, misalnya:

ns1.cloudflare.com
ns2.cloudflare.com

Lalu:

  • Masuk ke pengaturan domain kalian.
  • Ganti nameserver lama → ke nameserver Cloudflare

👉 Setelah ini, Cloudflare resmi jadi “pengatur domain” kita.


4. Tunggu Propagasi

Biasanya:

  • 5 menit sampai 1–2 jam

Kalau sudah berhasil:

  • Status di Cloudflare jadi Active

5. Setting SSL

Masuk ke:

SSL/TLS → Overview

Pilih:

Full (strict)

Kenapa harus Full (Strict)?

  • Karena saya sudah pakai SSL dari server (Certbot)
  • Jadi koneksi:
    • Cloudflare ↔ server tetap aman

6. Aktifkan Security Dasar

Di menu Security Cloudflare:

  • Block AI Bots: Block on all pages
  • Bot Fight Mode: ON

8. Amankan Akses Langsung ke IP (on-going)

Ini hal yang sedang saya ingin lakukan.

Tanpa ini:
👉 Masih bisa akses server lewat IP langsung

Solusi yang akan saya pakai:

  • Nginx dikonfigurasi untuk menolak akses IP
  • Firewall hanya mengizinkan Cloudflare

Hasilnya:

Akses lewat domain → normal
Akses lewat IP → ditolak/redirect lewat domain

Hasilnya

Setelah semua setup:

  • Website tetap normal ✅
  • Server lebih ringan ✅
  • Log “bersih” dari bot✅
  • IP server tidak terekspos langsung ✅

IPv4 dan IPv6 diatas merupakan IP dari Cloudflare


Akhir Kata

Menggabungkan domain dengan Cloudflare itu bukan “opsional”, tapi menurut saya cukup penting.

Terutama kalau:

  • Resource server kecil
  • Menghadapi bot / serangan

Dengan setup ini:

  • Performa meningkat
  • Keamanan meningkat
  • Lebih “future-proof”

Sekian dan terima kasih sudah membaca tulisan saya. Kemungkinan saya akan me-RAPI-kan blog pribadi khususnya mempelajari tentang wordpress ini dan nanti saya lanjut optimasi (cache WordPress, WAF rule, dll) 😄

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *