Apakah loading website Anda terasa lambat? Atau server tiba-tiba tumbang karena lonjakan traffic yang mencurigakan? Masalah ini sering dialami pemilik website, mulai dari blogger hingga skala enterprise. Tanpa lapisan perlindungan, serangan DDoS (Distributed Denial-of-Service) sederhana saja sudah cukup untuk melumpuhkan website Anda dalam hitungan menit.
Cloudflare hadir sebagai solusi untuk meningkatkan web performance sekaligus menjaga security. Secara teknis, Cloudflare bekerja sebagai reverse proxy yang menjembatani pengunjung (client) dengan server utama (origin server). Setiap request yang masuk akan disaring terlebih dahulu: hanya request aman yang diteruskan ke origin, sementara ancaman berbahaya akan langsung diblokir sebelum menyentuh server Anda.
Panduan ini disusun secara step-by-step berdasarkan pengujian langsung pada berbagai proyek, mulai dari shared hosting hingga VPS. Setiap tahapan juga dilengkapi metode pengujian agar Anda bisa memastikan sendiri bahwa konfigurasi sudah berjalan dengan benar.
Prasyarat sebelum memulai:
Pastikan Anda sudah menyiapkan hal-hal berikut:
- Domain Aktif: Memiliki nama domain yang sudah terdaftar (contoh: example.com).
- IP Address: Mengetahui alamat IP Address dari server atau hosting Anda.
- Akses Registrar: Memiliki akses login ke panel manajemen domain (Registrar).
Catatan Penting:
Panduan ini disusun secara bertahap. DNS harus aktif sebelum SSL diaktifkan, dan SSL harus berjalan normal sebelum Anda melakukan konfigurasi WAF, begitu seterusnya. Ikuti setiap langkah secara berurutan untuk menghindari bentrok konfigurasi (error).
1. Mengenal DNS (Domain Name System)
Sebelum masuk ke cara kerja Cloudflare, ada baiknya kita mengenal DNS (Domain Name System) terlebih dahulu. Bayangkan DNS sebagai buku telepon internet; sistem ini bertugas menerjemahkan nama domain yang biasa kita ketik (seperti example.com) menjadi IP Address berupa angka (seperti 203.0.113.10) agar bisa diproses oleh komputer.
Analoginya sederhana: jika IP Address adalah alamat fisik rumah Anda, maka nama domain adalah nama lokasi yang Anda ketik di aplikasi peta digital. DNS berperan sebagai peta itu sendiri yang mengarahkan Anda ke alamat yang tepat.
Komponen DNS yang Wajib Dipahami
A Record: Menghubungkan nama domain ke alamat IPv4.
example.com. 3600 IN A 203.0.113.10AAAA Record: Menghubungkan nama domain ke alamat IPv6.
example.com. 3600 IN AAAA 2001:db8::1CNAME Record (Alias): Mengarahkan satu subdomain ke domain atau hostname lain.
www.example.com. 3600 IN CNAME example.com.MX Record: Menentukan mail server untuk layanan email domain.
example.com. 3600 IN MX 10 mail.example.com.TXT Record: Menyimpan data teks untuk keperluan verifikasi seperti SPF, DKIM, dan lainnya.
example.com. 3600 IN TXT "v=spf1 include:_spf.google.com ~all"NS Record (Nameserver): Menentukan server DNS mana yang memegang kendali penuh (authoritative) atas domain tersebut. Bagian inilah yang nantinya akan kita ubah ke Nameserver milik Cloudflare.
example.com. 86400 IN NS ada.ns.cloudflare.com.
example.com. 86400 IN NS bob.ns.cloudflare.com.Begitu Anda mengganti Nameserver ke Cloudflare, secara otomatis Cloudflare menjadi authoritative DNS provider untuk domain Anda. Artinya, Cloudflare-lah yang akan menjawab setiap query DNS dari seluruh penjuru internet. Di sinilah letak kekuatan utama Cloudflare dalam mengelola dan mengamankan domain Anda.
TTL (Time to Live)
TTL adalah durasi (dalam detik) sebuah DNS record disimpan di dalam cache resolver.
- TTL Rendah (misalnya 300 detik / 5 menit): Perubahan DNS akan lebih cepat menyebar ke seluruh jaringan, namun beban query akan meningkat.
- TTL Tinggi (misalnya 86400 / 24 jam): Beban query berkurang, tetapi perubahan DNS membutuhkan waktu lebih lama untuk sinkronisasi (propagation).
Cloudflare secara otomatis mengelola TTL untuk setiap record yang statusnya Proxied. Sedangkan untuk record Non-proxy (DNS Only), nilai minimum TTL yang diizinkan pada Cloudflare Free Plan adalah 60 detik.
2. Mengapa Cloudflare Penting?
Keamanan Tingkat Tinggi: Proteksi DDoS dan Bot
Serangan DDoS terjadi saat jutaan perangkat yang terinfeksi (botnet) membanjiri satu target dengan traffic secara bersamaan. Server yang biasanya hanya menangani ratusan request per detik bisa langsung tumbang dalam hitungan menit akibat serangan ini.
Cloudflare mengandalkan jaringan Anycast global untuk mengatasinya. Saat serangan terjadi, traffic berbahaya akan diserap dan disebar ke ratusan data center Cloudflare di seluruh dunia, bukan langsung menghantam server Anda. Dengan kapasitas jaringan yang sangat besar, Cloudflare memastikan origin server tetap berjalan normal meski sedang diserang. Selain itu, sistem analisis real-time Cloudflare mampu membedakan pengunjung manusia asli dari bot atau crawler yang berbahaya.
Performa & CDN: Jaringan Server Global
CDN (Content Delivery Network) adalah jaringan server yang tersebar di berbagai belahan dunia. Per tahun 2026, Cloudflare mengoperasikan lebih dari 330 data center. Jika server Anda berada di Eropa dan pengunjung Anda ada di Jakarta, Cloudflare akan menyajikan konten yang sudah tersimpan (cached) dari data center terdekat (misalnya Singapura). Hasilnya, latency berkurang drastis dan website terbuka lebih cepat. Teknologi Anycast memastikan setiap request otomatis diarahkan ke jalur yang paling efisien.
Efisiensi Resource: Caching Otomatis
Fitur caching memungkinkan sebagian besar request pengunjung ditangani langsung oleh Cloudflare tanpa perlu membebani origin server Anda. Langkah ini sangat menghemat penggunaan CPU dan bandwidth server. Efisiensi tersebut bahkan bisa mengurangi beban kerja server hingga 60–70% untuk website dengan traffic tinggi.
SSL/TLS Gratis
Cloudflare menyediakan sertifikat SSL/TLS gratis untuk seluruh penggunanya. Selain mengamankan data, penggunaan HTTPS kini menjadi faktor krusial dalam penilaian ranking di Google Search.
| Aspek | DNS Standar (ISP/Registrar) | Cloudflare DNS |
|---|---|---|
| Kecepatan resolusi | Lambat hingga sedang | Sangat cepat (Anycast global) |
| DDoS protection | Tidak ada / terbatas | Unmetered DDoS mitigation |
| CDN | Tidak ada | 330+ lokasi global |
| SSL/TLS | Manual/berbayar | Gratis otomatis |
| WAF | Tidak ada | Tersedia (OWASP ruleset) |
| Analytics trafik | Tidak ada | Real-time dashboard |
| Penyembunyian IP origin | Tidak | Ya (IP server tidak terpublikasi) |
| Harga dasar | Gratis (termasuk layanan hosting) | Gratis (Free Plan) |
3. Kapan Cloudflare Tidak Perlukan?
Transparansi merupakan bagian dari kepercayaan. Berikut adalah situasi di mana Cloudflare mungkin bukan solusi terbaik:
- Website internal/intranet: Website yang hanya dapat diakses dari jaringan internal tidak perlu melewati Cloudflare. Anda dapat menggunakan solusi VPN atau Cloudflare Zero Trust sebagai gantinya.
- Aplikasi dengan latensi sangat sensitif: Real-time trading, gaming streaming, atau aplikasi yang membutuhkan latensi sub-1ms mungkin terdampak oleh tambahan hop melalui Cloudflare.
- Website yang membutuhkan IP Address statis origin: Beberapa layanan pihak ketiga memerlukan koneksi langsung ke IP Address server. Gunakan Cloudflare Spectrum atau pastikan endpoint tersebut di-bypass.
- Kepatuhan data lokal ketat: Penggunaan Cloudflare memerlukan konfigurasi Regional Services (tersedia pada paket berbayar) jika regulasi mengharuskan data tidak meninggalkan wilayah tertentu.
- Ketergantungan single vendor: Cloudflare adalah SPOF (Single Point of Failure) jika tidak ada backup. Website Anda akan ikut tidak dapat diakses jika Cloudflare mengalami outage.
4. Panduan Konfigurasi Cloudflare
Langkah 1. Membuat Akun Cloudflare
- Buka dash.cloudflare.com/sign-up.
- Masukkan alamat email dan password.
- Verifikasi email Anda melalui link konfirmasi yang dikirim Cloudflare.
- Login ke dashboard Cloudflare.
Cloudflare tidak mewajibkan memasukkan kartu kredit untuk paket Free. Domain yang dapat ditambahkan ke akun Free tidak dibatasi jumlahnya.
Langkah 2. Menambahkan Domain ke Cloudflare
- Klik tombol
Add → Connect a domainpada dashboard Cloudflare. - Masukkan nama domain Anda (contoh: example.com).
- Klik
Continue. - Cloudflare akan menjalankan DNS scan otomatis untuk mengimpor semua DNS record yang ditemukan. Periksa kembali hasilnya untuk memastikan data berikut sudah benar:
- A Record → Alamat IP Address server Anda.
- CNAME Record (jika ada).
- MX Record (jika menggunakan layanan email hosting).
- Jika ada record yang terlewat, tambahkan secara manual sebelum beralih ke tahap berikutnya.
- Klik
Continue. - Pilih paket layanan yang diinginkan. Paket Free adalah pilihan tepat untuk pemula karena sudah mencakup:
- Global CDN
- DDoS Mitigation tanpa batas (unmetered)
- Sertifikat Shared SSL gratis
- Web Application Firewall (WAF) dasar
- Klik
Continue.
Cloudflare akan menampilkan dua Nameserver baru yang harus Anda gunakan, contohnya:
ada.ns.cloudflare.com
bob.ns.cloudflare.comNama nameserver ini unik per domain. Catat nameserver yang ditampilkan di dashboard Anda.
Status domain di dashboard akan berubah menjadi Pending Nameserver Update setelah domain berhasil ditambahkan. Kondisi ini sepenuhnya normal, silakan lanjut ke Langkah 3.
Langkah 3. Mengganti Nameserver di Panel Domain (Registrar)
Tahapan ini dilakukan melalui panel manajemen domain di tempat Anda membeli domain (Registrar), bukan di dashboard Cloudflare. Meskipun tampilan setiap Registrar berbeda-beda, alurnya tetap serupa.
Contoh langkah umum:
- Login ke Client Area atau panel kontrol domain Anda.
- Masuk ke menu Domain → Daftar Domain.
- Klik pada nama domain yang ingin dikonfigurasi.
- Pilih menu
NameserveratauDNS Management. - Ganti Nameserver lama dengan dua alamat Nameserver Cloudflare yang sudah Anda catat dari Langkah 2.
- Simpan perubahan tersebut.
Propagasi DNS membutuhkan waktu hingga 24–48 jam untuk menyebar ke seluruh resolver internet, meskipun sering kali selesai dalam hitungan jam. Selama masa propagation ini, sebagian pengunjung mungkin masih terhubung melalui DNS lama.
Pengujian Langkah 3
Gunakan perintah dig atau nslookup untuk memeriksa nameserver domain Anda:
dig NS example.com +shortOutput yang diharapkan:
ada.ns.cloudflare.com.
bob.ns.cloudflare.com.Verifikasi kedua, pastikan IP Address yang muncul adalah milik Cloudflare:
ping example.comAlamat IP yang muncul seharusnya bukan lagi IP Address asli server Anda, melainkan salah satu dari rentang Cloudflare IP (cloudflare.com/ips).
Verifikasi dengan curl, periksa header CF-RAY sebagai bukti traffic sudah melewati jaringan Cloudflare:
curl -I https://example.comJika Anda menemukan header CF-RAY dan Server: cloudflare di dalam response, berarti konfigurasi DNS telah berhasil. Status domain pada dashboard Cloudflare akan berubah dari Pending menjadi Active (ditandai dengan ikon centang hijau).
Langkah 4. Mengaktifkan SSL/TLS (HTTPS)
Sertifikat SSL/TLS akan tersedia secara otomatis begitu domain Anda aktif di Cloudflare. Meskipun demikian, Anda tetap perlu memilih mode enkripsi yang paling sesuai dengan kondisi origin server. Buka dashboard Cloudflare, pilih domain Anda, lalu masuk ke menu SSL/TLS → Overview.
Tersedia empat pilihan mode SSL/TLS yang bisa Anda gunakan:
| Mode SSL/TLS | Enkripsi Client → Cloudflare | Enkripsi Cloudflare → Origin | Kondisi Penggunaan |
|---|---|---|---|
| Off | Tidak Ada | Tidak Ada | Sangat tidak direkomendasikan (hanya untuk HTTP) |
| Flexible | Ya (HTTPS) | Tidak (HTTP) | Shared hosting yang belum memiliki SSL di origin |
| Full | Ya (HTTPS) | Ya (Bisa menggunakan self-signed) | Server sudah memiliki SSL, meski belum tervalidasi CA |
| Full (Strict) | Ya (HTTPS) | Ya (Wajib sertifikat valid/CA-signed) | VPS/Server dengan Let's Encrypt atau Cloudflare Origin CA |
Rekomendasi: Gunakan mode Full (Strict) jika Anda memiliki kontrol penuh atas server dan telah menginstal sertifikat SSL (seperti Let's Encrypt). Untuk pengguna shared hosting yang sudah menyediakan SSL, gunakan mode Full. Hindari mode Flexible untuk website yang menangani data sensitif karena koneksi antara Cloudflare dan server Anda tetap tidak terenkripsi.
Mengaktifkan Always Use HTTPS
Pastikan semua traffic HTTP otomatis dialihkan (redirect) ke HTTPS. Masuk ke menu SSL/TLS → Edge Certificates, lalu aktifkan opsi Always Use HTTPS.
Mengaktifkan HSTS (Opsional, Tingkat Lanjut)
HTTP Strict Transport Security (HSTS) memberikan instruksi kepada browser agar selalu menggunakan HTTPS untuk domain Anda, bahkan sebelum request pertama dilakukan. Aktifkan fitur ini dengan hati-hati; jika Anda menonaktifkan HTTPS di kemudian hari, website Anda bisa menjadi tidak dapat diakses sama sekali oleh pengunjung.
# Header HSTS yang dikirimkan oleh Cloudflare setelah fitur tersebut diaktifkan:
Strict-Transport-Security: max-age=31536000; includeSubDomains; preloadNilai max-age sebesar 31536000 berarti browser akan mengingat untuk selalu menggunakan HTTPS selama satu tahun ke depan. Parameter includeSubDomains memastikan perlindungan ini juga berlaku untuk semua subdomain Anda, sementara preload memungkinkan domain Anda didaftarkan dalam daftar HSTS Preload global yang dikelola oleh Google.
Pengujian Langkah 4
# Cek sertifikat SSL
curl -vI https://example.com 2>&1 | grep -E "SSL|TLS|issuer|expire"
# Atau gunakan openssl
echo | openssl s_client -connect example.com:443 -servername example.com 2>/dev/null | openssl x509 -noout -issuer -datesOutput harus menunjukkan Issuer dari Cloudflare atau Let's Encrypt, serta tanggal Expiration Date yang masih berlaku. Pastikan browser menampilkan ikon gembok (padlock) pada kolom alamat sebagai tanda koneksi sudah aman.
# Tes redirect HTTP ke HTTPS
curl -I http://example.comResponse harus menunjukkan status 301 Moved Permanently dengan informasi Location: https://example.com.
Langkah 5. Optimasi Performa: Auto Minify dan Brotli
5.1 Auto Minify
Auto Minify bertugas menghapus karakter yang tidak diperlukan (seperti spasi, komentar, dan baris baru) dari file HTML, CSS, dan JavaScript sebelum dikirimkan ke pengunjung. Hasilnya, ukuran file menjadi lebih kecil dan proses transfer data menjadi jauh lebih cepat.
Buka menu Speed → Optimization → Content Optimization, lalu aktifkan Auto Minify untuk ketiga jenis file tersebut.
5.2 Brotli Compression
Brotli adalah algoritma kompresi buatan Google yang 15–25% lebih efisien dibandingkan Gzip untuk konten web. Cloudflare sudah mendukung Brotli secara bawaan (native).
Aktifkan opsi Brotli pada menu yang sama (Content Optimization).
5.3 Rocket Loader (Opsional)
Rocket Loader memprioritaskan proses rendering konten website dengan memuat (load) JavaScript secara asinkron (asynchronous). Fitur ini sangat berguna jika website Anda terasa berat akibat banyaknya script pihak ketiga. Namun, pastikan untuk melakukan pengujian terlebih dahulu karena beberapa plugin JavaScript mungkin akan mengalami kendala.
Pengujian Langkah 5
Gunakan perintah curl untuk memastikan fitur Brotli sudah aktif melalui pemeriksaan header Content-Encoding:
curl -H "Accept-Encoding: br" -I https://example.comResponse header yang diharapkan:
Content-Encoding: brJika browser pengunjung tidak mendukung Brotli, Cloudflare secara otomatis akan melakukan fallback ke Gzip (Content-Encoding: gzip).
Selain itu, Anda bisa menguji peningkatan kecepatan website menggunakan tools berikut:
- PageSpeed Insights: Analisis performa dari Google.
- WebPageTest: Pengujian akses dari berbagai lokasi geografis.
- GTmetrix: Laporan performa web yang mendetail.
Langkah 6. Konfigurasi Caching
Caching merupakan salah satu fitur yang paling berpengaruh terhadap performa website. Menyimpan konten di edge server Cloudflare, permintaan (request) berikutnya tidak perlu lagi diteruskan ke origin server.
Buka menu Caching → Configuration:
- Caching Level: Pilih
Standarduntuk penggunaan umum. PilihIgnore Query Stringjika Anda ingin mengabaikan parameter URL dalam penentuan cache key. - Browser Cache TTL: Atur durasi penyimpanan cache di browser pengunjung. Durasi 4 jam adalah pilihan aman untuk website statis, sedangkan untuk website dinamis, sebaiknya gunakan nilai yang lebih rendah.
Cache Rules (Aturan Cache Kustom)
Buka Caching → Cache Rules untuk membuat aturan yang lebih spesifik. Contoh: Anda bisa mengatur agar semua file gambar di-cache selama 30 hari.
# Contoh logika Cache Rule untuk file statis
# Field: File Extension
# Operator: is in
# Value: jpg, jpeg, png, gif, webp, svg, ico, woff, woff2, css, js
# Action: Cache Everything
# Edge Cache TTL: 1 monthPengujian Langkah 6
# Cek header cache dari Cloudflare
curl -I https://example.com/gambar.jpgResponse header yang diharapkan:
CF-Cache-Status: HIT # Konten berasal dari cache Cloudflare
Age: 3600 # Sudah di-cache selama 1 jam
Cache-Control: public, max-age=86400Nilai CF-Cache-Status bisa berupa:
- HIT: disajikan dari cache Cloudflare
- MISS: tidak ada di cache, diambil dari origin
- BYPASS: cache dilewati (biasanya karena cookie atau header no-cache)
- DYNAMIC: konten tidak di-cache (halaman dinamis)
Langkah 7. Melindungi Origin Server dari Bypass Cloudflare
Penyerang terkadang bisa menemukan IP address asli server Anda melalui riwayat DNS, header email, atau log lama. Hal ini memungkinkan mereka mengakses server secara langsung dan melewati semua sistem keamanan Cloudflare. Langkah ini bertujuan untuk menutup celah tersebut.
Pastikan server Anda hanya menerima koneksi dari rentang IP resmi Cloudflare. Cara termudah adalah dengan menggunakan fitur Authenticated Origin Pulls atau membatasi akses melalui Firewall (UFW/iptables) di level server.
Tindakan ini memastikan semua lalu lintas data wajib melewati filter keamanan Cloudflare sebelum mencapai server Anda.
7.1 Whitelist Cloudflare IP di Firewall Server
Atur konfigurasi firewall server (seperti iptables atau ufw) agar hanya menerima koneksi HTTP/HTTPS dari rentang IP resmi Cloudflare. Langkah ini sangat penting agar tidak ada pihak luar yang bisa mengakses server Anda secara langsung. Daftar lengkap IP Cloudflare terbaru selalu tersedia di cloudflare.com/ips.
Menggunakan iptables :
Masukkan perintah berikut untuk mengizinkan trafik dari Cloudflare dan memblokir akses lainnya ke port 80 dan 443:
# Hapus rule default HTTP/HTTPS
iptables -D INPUT -p tcp -m multiport --dports 80,443 -j ACCEPT 2>/dev/null
# Allow Cloudflare IPv4 (ambil otomatis)
curl -s https://www.cloudflare.com/ips-v4/ | while read ip; do
iptables -I INPUT -p tcp -m multiport --dports 80,443 -s "$ip" -j ACCEPT
done
# Allow Cloudflare IPv6 (ambil otomatis)
curl -s https://www.cloudflare.com/ips-v6/ | while read ip; do
ip6tables -I INPUT -p tcp -m multiport --dports 80,443 -s "$ip" -j ACCEPT
done
# Drop selain Cloudflare
iptables -A INPUT -p tcp -m multiport --dports 80,443 -j DROPMenggunakan UFW:
# Reset rule lama untuk HTTP/HTTPS (opsional, hati-hati kalau ada rule lain)
ufw delete allow 80/tcp 2>/dev/null
ufw delete allow 443/tcp 2>/dev/null
# Allow Cloudflare IPv4
curl -s https://www.cloudflare.com/ips-v4/ | while read ip; do
ufw allow from "$ip" to any port 80 proto tcp
ufw allow from "$ip" to any port 443 proto tcp
done
# Allow Cloudflare IPv6
curl -s https://www.cloudflare.com/ips-v6/ | while read ip; do
ufw allow from "$ip" to any port 80 proto tcp
ufw allow from "$ip" to any port 443 proto tcp
done
# Deny semua selain Cloudflare
ufw deny 80/tcp
ufw deny 443/tcp
# Reload UFW
ufw reloadPeringatan Penting: Pastikan port SSH (default 22) atau port manajemen lainnya tidak ikut terblokir saat Anda mengatur firewall. Kelalaian pada bagian ini dapat menyebabkan Anda terkunci dan kehilangan akses masuk ke server sendiri. Selalu verifikasi bahwa aturan untuk port SSH sudah aktif sebelum Anda menerapkan pembatasan pada port 80 dan 443.
7.2 Cloudflare Authenticated Origin Pull
Fitur Authenticated Origin Pulls memastikan bahwa hanya Cloudflare yang dapat berkomunikasi dengan origin server Anda. Sistem ini bekerja dengan mewajibkan Cloudflare menunjukkan sertifikat TLS client yang valid setiap kali melakukan koneksi. Aktifkan fitur ini melalui menu SSL/TLS → Origin Server → Authenticated Origin Pulls.
Pengujian Langkah 7
# Coba akses langsung ke IP server (bukan melalui domain)
# Seharusnya ditolak atau timeout
curl -I http://<IP_SERVER_ANDA>
# Akses via domain (melalui Cloudflare) harus tetap berhasil
curl -I https://example.comKeberhasilan proteksi ditandai dengan munculnya pesan connection refused atau timeout saat IP server diakses secara langsung. Sebaliknya, akses melalui domain harus tetap berjalan normal dan mengembalikan status 200 OK.
Langkah 8. Web Application Firewall (WAF)
WAF (Web Application Firewall) merupakan lapisan perlindungan di level aplikasi (Layer 7) yang bertugas menyaring, memantau, dan memblokir HTTP request berbahaya. Fitur ini bekerja menyaring trafik di infrastruktur Cloudflare sebelum mencapai origin server Anda.
Buka menu Security → Security rules. Klik tombol Create rule → Custom rules untuk mulai membuat konfigurasi.
Berikut ini merupakan beberapa contoh penerapan WAF:
Memblokir IP Address
Blokir satu IP address, misalnya 165.245.183.105:
# Rule name: Blokir satu IP
# Field: IP Source Address
# Operator: equals
# Value: 165.245.183.105
# Choose action: Block
# Form builder akan menghasilkan ekspresi:
(ip.src eq 165.245.183.105)Blokir banyak IP address:
# Rule name: Blokir banyak IP
# Field: IP Source Address
# Operator: is in
# Value: 165.245.183.105 164.245.130.213 164.245.200.105
# Choose action: Block
# Form builder akan menghasilkan ekspresi:
(ip.src in {165.245.183.105 164.245.130.213 164.245.200.105})Blokir range IP (CIDR)
# Rule name: Blokir range IP
# Field: IP Source Address
# Operator: is in
# Value: 165.245.128.0/17
# Choose action: Block
# Form builder akan menghasilkan ekspresi:
(ip.src in {165.245.128.0/17})Memblokir ASN (Autonomous System Number)
ASN (Autonomous System Number) merupakan identifikasi unik bagi jaringan yang dioperasikan oleh satu entitas, seperti ISP, perusahaan hosting, atau penyedia layanan cloud. Pemblokiran ASN berguna untuk memblokir trafik dari penyedia hosting yang sering menjadi sumber serangan, misalnya penyedia VPS tertentu yang kerap disalahgunakan.
Cara menemukan ASN dari IP Address tertentu:
# Menggunakan whois dan kombinasi layanan dari Team Cymru
whois -h v4.whois.cymru.com "-v 165.245.183.105"
# Respon:
AS | IP | BGP Prefix | CC | Registry | Allocated | AS Name
14061 | 165.245.183.105 | 165.245.176.0/20 | US | arin | 2025-04-24 | DIGITALOCEAN-ASN - DigitalOcean, LLC, US
# Atau gunakan online tool dari bgp.he.net
# URL: https://bgp.he.net/ip/165.245.183.105Custom rule untuk blokir AS Number:
# Blokir satu ASN
# Field: ASN
# Operator: equals
# Value: 14061
# Ekspresi yang dihasilkan: (ip.src.asnum eq 14061)
# Blokir beberapa ASN sekaligus
# Field: ASN
# Operator: is in
# Value: 14061 134963
# Eskpresi yang dihasilkan: (ip.src.asnum in {14061 134963})Peringatan: Memblokir seluruh ASN memiliki dampak besar. ASN dari provider hosting besar dapat mencakup jutaan IP Address yang digunakan oleh legitimate user. Pertimbangkan untuk menggunakan Managed Challenge (CAPTCHA) sebagai action daripada melakukan Block secara langsung agar legitimate user tetap dapat mengakses website Anda.
Memblokir Akses URL Tertentu
Memblokir akses ke URL atau path tertentu sangat berguna untuk melindungi halaman admin, file konfigurasi, atau endpoint yang tidak boleh diakses oleh publik.
Blokir akses ke file sensitif:
# Field: URI Path
# Operator: contains
# Value: .env
# Or
# Field: URI Path
# Operator: contains
# Value: .git
# Ekspresi yang dihasilkan:
(http.request.uri.path contains ".env") or (http.request.uri.path contains ".git")Blokir URL WordPress admin kecuali IP tertentu:
# Field: URI Path
# Operator: contains
# Value: /wp-admin
# And
# Field: IP Source Address
# Operator: is not in
# Value: 182.11.130.112 182.11.130.11
# Ekspresi yang dihasilkan:
(http.request.uri.path contains "/wp-admin" and not ip.src in {182.11.130.112 182.11.130.110})Memblokir Akses dari Negara Tertentu
Cloudflare menggunakan data geolocation IP Address untuk menentukan asal negara dari setiap request. Anda dapat memblokir atau menampilkan challenge kepada pengunjung dari negara tertentu.
Blokir negara tertentu:
# Field: Country
# Operator: is in
# Value: pilih negara yang mau diblokir
# Ekspresi yang dihasilkan: (ip.src.country in {"XX" "YY"})Izinkan hanya negara tertentu (Whitelist):
# Field: Country
# Operator: is not in
# Value: pilih negara yang mau diizinkan
# Ekspresi yang dihasilkan: (not ip.src.country in {"XX" "YY"})Catatan Penting: Geoblocking memiliki limitasi karena penggunaan VPN dan proxy memungkinkan pengguna melewati batasan ini. Selain itu, pastikan Anda tidak memblokir bot search engine seperti Googlebot atau Bingbot yang sangat penting bagi SEO. Cloudflare secara default mengenali bot search engine terpercaya dan mengecualikannya dari sebagian besar rule pemblokiran.
Pengujian WAF:
# Akses website dari sumber akses yang diblokir akan menerima response sebagai berikut:
Sorry, you have been blocked
You are unable to access example.comLangkah 9: Under Attack Mode: Response Darurat Saat DDoS
Under Attack Mode merupakan fitur emergency yang menampilkan halaman JavaScript challenge kepada seluruh pengunjung sebelum mengizinkan akses ke website Anda. Browser yang legitimate akan menyelesaikan challenge ini secara otomatis dalam beberapa detik.
Mode ini efektif untuk menangkis
- HTTP DDoS floods
- Bot yang tidak dapat menjalankan JavaScript
- Layer 7 application attacks
Anda dapat mengaktifkannya melalui Domain → Overview. Pada sidebar kanan, Quick Actions → Under Attack Mode.
Penting: Hindari mengaktifkan Under Attack Mode secara terus-menerus. Mode ini memperlambat akses pertama pengunjung legitimate serta dapat memengaruhi user experience. Aktifkan fitur ini hanya saat website Anda sedang mengalami serangan nyata.
Pengujian Under Attack Mode:
Saat Under Attack Mode aktif, akses website melalui browser.
Pengunjung akan melihat halaman: "Checking your browser before accessing..."
Browser secara otomatis menyelesaikan JS challenge dalam rentang waktu 2 hingga 5 detik.5. Monitoring dan Maintenance
Keamanan dan performa website bukanlah hasil dari konfigurasi statis, melainkan buah dari monitoring dan maintenance yang dilakukan secara konsisten. Melalui panel Cloudflare, Anda dapat memantau grafik trafik, mendeteksi anomali serangan secara real-time, serta memastikan setiap rule yang telah dikonfigurasi tetap relevan dengan pola ancaman terbaru. Melakukan audit rutin terhadap security events dan memeriksa analytics akan membantu Anda mengoptimalkan sumber daya infrastruktur sekaligus menjaga pengalaman pengguna tetap lancar.
Analytics & Logs
Buka menu Domain → Analytics & logs:
- HTTP Traffic: memantau volume dan distribusi request ke website, termasuk asal negara serta metrik utama seperti requests, bandwidth, dan unique visitors.
- Web analytics: membantu Anda memahami performa halaman web sebagaimana dialami langsung oleh pengunjung website Anda.
Security Analytics
Buka menu Domain → Security → Analytics:
- Traffic: menyajikan informasi menyeluruh tentang incoming HTTP requests pada domain, termasuk analisis distribusi, sumber data (Cloudflare global network atau origin server), serta analisis trafik mencurigakan
- Events:peninjauan mitigated requests yang ditandai oleh fitur keamanan Cloudflare, dengan opsi sampled logs untuk paket Free atau data komprehensif bagi pelanggan berbayar.
Notifikasi Otomatis
Aktifkan notifikasi pada menu Manage account → Notifications untuk mendapatkan alert misalnya ketika:
- DDoS attack terdeteksi.
- SSL certificate mendekati masa kedaluwarsa.
- Health check origin server gagal.
- Terjadi lonjakan anomali trafik.
Penutup
Cloudflare merupakan salah satu keputusan infrastruktur terbaik bagi website Anda, terutama karena fitur-fitur enterprise-grade tersedia secara gratis pada paket Free. Keamanan website bukanlah proyek sekali jadi, melainkan sebuah proses berkelanjutan. Anda perlu memantau event log secara rutin, memperbarui aturan firewall, serta mengikuti changelog Cloudflare untuk mendapatkan fitur dan ruleset terbaru. Kombinasi kecepatan CDN global, perlindungan DDoS yang kuat, serta WAF yang dapat dikustomisasi membuat Cloudflare mampu memberikan kemampuan setara solusi enterprise berbayar tanpa biaya tambahan untuk sebagian besar use case.




