Cara mengatur WAF Rules Cloudflare admin WordPress agar lebih aman

Membuat Security Rules Cloudflare adalah langkah krusial untuk melindungi situs WordPress dari serangan brute force, spam, hingga injeksi SQL tanpa membebani server asal. Karena kita mengincar performa maksimal dan keamanan ketat maka kita gunakan Cloudflare WAF (Web Application Firewall) yang bekerja diluar server asal situs.


Cara Mengatur Security Rules Cloudflare untuk Keamanan WordPress Maksimal

Keamanan adalah pilar utama dalam membangun kredibilitas situs web. Dengan memindahkan beban keamanan ke Cloudflare (Edge Server), situs WordPress Anda tidak hanya menjadi lebih aman, tetapi juga lebih cepat karena serangan dicegah sebelum sempat mencapai server hosting Anda.

Mengapa Harus Mengatur Rule Secara Manual?

Meskipun Cloudflare memiliki perlindungan dasar, WordPress memiliki kerentanan spesifik (seperti /wp-admin dan xmlrpc.php) yang sering menjadi target bot otomatis. Dengan Custom Rules, kita bisa membuat “benteng” yang sangat spesifik.


Persiapan & Penggunaan WPCODE (opsional)

Sangat direkomendasikan untuk tetap menggunakan plugin WPCODE di sisi WordPress. Meskipun kita mengatur keamanan di Cloudflare, terkadang kita butuh menyuntikkan skrip tracking atau header security tambahan tanpa mengedit file sistem. Cloudflare bekerja di lapisan luar, sementara WPCODE menjaga integritas kode di lapisan dalam.

Catatan: Kode filter IP atau deteksi bot otomatis yang kompatibel dengan Cloudflare bisa Anda dapatkan di halaman Kumpulan Snippet WPCODE.


5 Security Rules Wajib untuk WordPress

Buka dashboard Cloudflare Anda, pilih domain, lalu navigasi ke Security > WAF > Custom Rules. Klik Create Rule.

1. Memproteksi Halaman Login (wp-login.php)

Serangan paling umum adalah Brute Force pada halaman login.

  • Field: URI Path
  • Operator: contains
  • Value: /wp-login.php
  • Action: Managed Challenge (Menampilkan verifikasi CAPTCHA Cloudflare).
  • Tujuannya agar bot otomatis tidak bisa menebak password Anda terus-menerus.

2. Mematikan XML-RPC (Target Utama DDoS)

Jika Anda tidak menggunakan aplikasi mobile WordPress atau Jetpack, sebaiknya matikan fitur ini.

  • Field: URI Path
  • Operator: contains
  • Value: /xmlrpc.php
  • Action: Block

3. Membatasi Akses wp-admin

Jika Anda memiliki IP statis, Anda bisa mengunci akses admin hanya untuk IP Anda. Jika tidak, gunakan tantangan keamanan.

  • Field: URI Path
  • Operator: contains
  • Value: /wp-admin/
  • Action: Interactive Challenge

4. Memblokir Akses Langsung ke File Sensitif

Mencegah pengguna mengintip file sistem atau log.

  • Field: URI Path
  • Operator: matches regex
  • Value: \.(social|ads|txt|log|etc)$
  • Action: Block


5. Mengunci Akses Admin dengan Expression Rules

Cloudflare menyediakan fitur Expression Editor yang memungkinkan kita menulis logika keamanan yang sangat spesifik. Kode yang akan kita gunakan bertujuan untuk membatasi akses ke /wp-admin/ dan wp-login.php.

Langkah-Langkah Konfigurasi:

  1. Masuk ke dashboard Cloudflare dan pilih domain Anda.
  2. Buka menu Security > WAF > Custom Rules.
  3. Klik tombol + Create Rule.
  4. Berikan nama yang jelas, misalnya: Lockdown Admin Access.
  5. Di bawah bagian “If incoming requests match…”, klik teks biru bertuliskan “Edit expression”.
  6. Salin dan tempel kode berikut (sudah disesuaikan agar valid di sistem Cloudflare):

Format Expression Banyak IP

(http.request.uri.path wildcard "/wp-admin/*") or (http.request.uri.path wildcard "/wp-login.php*" and not ip.src in {1.1.1.1 2.2.2.2 3.3.3.3})

Penjelasan Kode:

  • {1.1.1.1 2.2.2.2 3.3.3.3}: Ganti angka-angka ini dengan daftar IP yang ingin Anda izinkan.
  • Spasi sebagai pemisah: Pastikan hanya menggunakan spasi untuk memisahkan antar IP. Jangan gunakan tanda koma atau titik koma, karena Cloudflare akan menganggapnya invalid expression.

Catatan Penting: Ganti {1.2.3.4} dengan Alamat IP Publik rumah atau kantor Anda. Cloudflare tidak mengenali $localhost sebagai IP pribadi Anda; mereka membutuhkan daftar IP spesifik (IP List) atau satu IP statis agar Anda sendiri tidak terblokir.

Penjelasan Logika Kode:

  • (http.request.uri.path wildcard "/wp-admin/*"): Bagian ini memantau semua permintaan yang mencoba mengakses direktori admin.
  • or (http.request.uri.path wildcard "/wp-login.php*" ... ): Menambahkan perlindungan pada file login tunggal.
  • and not ip.src in {1.2.3.4}: Ini adalah pengecualian. Artinya: “Terapkan aturan ini kepada semua orang, KECUALI orang yang memiliki IP 1.2.3.4 (Anda).”

Memilih Tindakan (Choose Action)

Setelah memasukkan ekspresi di atas, Anda harus memilih tindakan yang diambil Cloudflare terhadap orang asing yang mencoba mengakses halaman tersebut:

  1. Block: Pilihan paling ekstrem. Orang lain akan langsung melihat halaman error 403.
  2. Managed Challenge (Sangat Direkomendasikan): Pengunjung selain IP Anda harus melewati verifikasi CAPTCHA otomatis. Ini lebih aman jika Anda memiliki IP dinamis (berubah-ubah), karena Anda tetap bisa masuk setelah verifikasi.


Kesimpulan

Dengan menerapkan teknik Expression Rule ini, Anda telah mengurangi beban kerja server WordPress Anda secara signifikan. Bot jahat tidak akan pernah sampai ke database Anda karena mereka sudah dihentikan di “gerbang depan” Cloudflare.

Pro Tip: Setelah menyimpan rule, cobalah buka halaman login Anda menggunakan tab Incognito atau koneksi internet yang berbeda (misal: hotspot ponsel) untuk memastikan tantangan keamanan muncul dengan benar.


Langkah Penutup: Verifikasi Keamanan

Setelah mengatur Custom Rules, selalu pantau bagian Security > Events. Di sana Anda bisa melihat berapa banyak serangan yang berhasil dicegah.

Penting: Lakukan pembersihan cache pada Cloudflare (Purge Everywhere) setelah mengganti rule agar perubahan langsung diterapkan ke seluruh server Edge secara global.

Baca juga: Panduan Lengkap: Cara Menghubungkan WordPress ke Cloudflare Terbaru 2026

FAQ: Cloudflare Security Rules

Apakah Security Rules ini akan mengganggu pengunjung biasa? +
Tidak. Dengan menggunakan Managed Challenge, pengunjung manusia biasanya hanya akan melihat proses verifikasi singkat tanpa harus mengetik apapun, sementara bot jahat akan langsung terblokir.
Dapatkah saya mengaktifkan Rule ini untuk halaman AMP? +
Ya. Cloudflare bekerja di lapisan DNS, sehingga semua versi halaman (baik standar maupun AMP) akan mendapatkan perlindungan yang sama secara otomatis.
Apa yang harus dilakukan jika saya terblokir sendiri? +
Jika Anda terblokir, masuklah ke dashboard Cloudflare melalui jaringan lain (misal paket data ponsel), cari IP Anda di log Security, lalu tambahkan IP tersebut ke dalam IP Access Rules dengan status ‘Allow’.

yogak989

Share
Published by
yogak989

Recent Posts

Strategi Pertahanan Berlapis: Mengamankan Website dengan Cloudflare WAF

Berikut adalah artikel lengkap mengenai Strategi Pertahanan Berlapis: Mengamankan Website dengan Cloudflare WAF. Strategi penerapan…

6 bulan ago

Strategi Keamanan Web: Mengapa Trafik ASN Pusat Data Wajib Di-Challenge?

Strategi Keamanan Web: MengapaTrafik ASN Pusat Data Wajib Di-Challenge? Dalam pengelolaan strategi keamanan web modern,…

6 bulan ago

Kelebihan Frontend situs web Next JS

Arsitektur Modern & Performa Tinggi Halaman ini dibangun menggunakan framework Next JS dan dideploy melalui…

6 bulan ago

Code Snipet Multi Bahasa Gratis Tanpa plugin wpml polylang

Code Snipet Multi Bahasa Sebelum mulai langkah-langkah injeksi Code Snipet Multi Bahasa Gratis Tanpa plugin…

6 bulan ago

Cara Membuat WordPress Multi bahasa Tanpa Plugin WPML & Polylang

Panduan Pro: Membuat WordPress Multi-Bahasa Tanpa Plugin (WPML/Polylang) Cara Membuat WordPress Multi bahasa Tanpa Plugin…

7 bulan ago

Plugin Custom Animation Bundle (CAB) PUJASHANTI

Panduan Penggunaan Plugin Custom Animation Bundle (CAB) Versi: 1.1.3 (Updated 2026) Panduan Penggunaan Plugin Custom…

7 bulan ago