Skip to main content

πŸ”§ Step by Step Setting Cloudflare Security (Free Plan)

1. SSL/TLS

  • Menu: SSL/TLS β†’ Overview

  • Pilih: Full (Strict) (asal server sudah pakai cert valid, misalnya Let’s Encrypt).
    πŸ‘‰ Supaya koneksi aman end-to-end (bukan hanya user β†’ Cloudflare).


2. Security Level

  • Menu: Security β†’ Settings β†’ Security Level

  • Pilih: High
    πŸ‘‰ User yang dianggap mencurigakan akan kena JS Challenge. Ini sangat membantu mencegah bot scanning random.


3. Super Bot Fight Mode

  • Menu: Security β†’ Settings β†’ Bot Trafic β†’ Bot Fight Mode

  • Aktifkan:

    • DefinitelyCaranya: automatedklik β†’menu BlockSecurity > pilih submenu Bots lalu aktifkan Bot Fight Mode

    • Verified bots β†’ Allow (biar Googlebot, Bingbot, dll tetap bisa crawl robots.txt & index site).
      πŸ‘‰ Bot scanning seperti curl/sqlmap otomatis di-drop.


4. Firewall/Security Rules (5 prioritas tadi)


5. Caching

  • Menu: Caching β†’ Configuration

  • Aktifkan:

    • Always Online β†’ On (jaga kalau server down, Cloudflare tampilkan cache).

    • Auto Minify β†’ On (JS, CSS, HTML)

    • Brotli Compression β†’ On
      πŸ‘‰ Selain lebih cepat, juga mengurangi hit langsung ke server.


6. Hide Origin IP

  • Pastikan semua subdomain yang dipakai publik (misalnya poltekesos.ac.id, www.poltekesos.ac.id) statusnya Proxied (awan oranye).

  • Kalau ada subdomain DNS Only (awan abu-abu), attacker bisa tahu IP asli server.

  • Kalau bisa, di server aktifkan firewall yang hanya allow koneksi dari Cloudflare IPs.


7. Rate Limiting (Workaround via Rule)

  • Karena Free Plan tidak ada Rate Limit resmi, pakai Rule /login β†’ Challenge.
    πŸ‘‰ Minimal mencegah brute force login Laravel.


8. Optional: Page Rules

  • Menu: Rules β†’ Page Rules (Free Plan dapat 3 rules).

  • Bisa dipakai untuk:

    • Cache Everything untuk halaman statis.

    • Disable Performance untuk area login (/login*).
      πŸ‘‰ Supaya login tidak cached dan tetap normal.


πŸ“Œ Urutan Eksekusi Ideal:

  1. SSL/TLS Full Strict (dasar keamanan)

  2. Security Level High (screening awal)

  3. Super Bot Fight Mode (blokir bot otomatis)

  4. Security Rules (5 rules revisi) (proteksi Laravel spesifik)

  5. Caching & Page Rules (optimasi + proteksi tambahan)

  6. Hide Origin IP (jangan bocor IP server asli)


Kalau sudah jalan semua ini β†’ walaupun Laravel 5.7 rawan, layer di depan (Cloudflare) sudah sangat memperkecil permukaan serangan.

πŸ‘‰ Mau saya bikinkan juga contoh firewall rule iptables/ufw di server supaya server hanya menerima trafik dari Cloudflare IP ranges? Itu bisa jadi last shield kalau ada yang nekat bypass Cloudflare.