Pernah punya pengalaman tiba-tiba server jadi berat hanya karena banyak request mencurigakan ke halaman login website kamu? Atau mungkin akses ke file penting seperti wp-login.php atau admin.php terasa aneh, banyak request dari IP yang nggak dikenal? Masalah ini umum banget terjadi, terutama di website yang pakai VPS unmanaged. Tapi ada satu solusi sederhana yang sering diremehkan: rate limiting di Nginx.
Nginx punya fitur powerful untuk membatasi frekuensi request dari satu IP, yang bisa mencegah serangan brute force atau bot crawler iseng. Dengan konfigurasi sederhana, kamu bisa mengurangi beban server, memperkuat keamanan login, bahkan menghemat bandwidth.
Kenapa Harus Pakai Rate Limiting?
Serangan ke halaman login itu bukan cuma masalah brute force. Banyak bot scanning yang coba-coba URL secara random, dan ini bikin resource server jadi boros. Bahkan kalau gagal login pun, kalau volumenya tinggi bisa bikin load server naik drastis.
Rate limiting juga bermanfaat buat kamu yang pakai layanan seperti WordPress, WHMCS, atau aplikasi yang punya halaman login sensitif.
Skenario Umum:
- Akses ke
/login,/wp-login.php, atau/admindibatasi 5 request per menit per IP. - Jika melebihi, dapat error 429 (Too Many Requests).
Contoh Konfigurasi Rate Limiting Nginx
Pertama, kita definisikan zone rate limiting di file konfigurasi nginx.conf atau di http block:
limit_req_zone $binary_remote_addr zone=login_limit:10m rate=5r/m;
Artinya: kita simpan data per IP selama 10 menit, dan hanya izinkan 5 request per menit.
Lalu di block server atau location, tambahkan:
location /wp-login.php {
limit_req zone=login_limit burst=3 nodelay;
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
}
Opsi burst=3 artinya boleh menyimpan 3 request ekstra dalam buffer sebelum menolak.
Kalau kamu ingin aktifkan rate limit untuk semua request ke domain tertentu, bisa pasang di level server atau location /.
Uji Coba dan Monitoring
Setelah konfigurasi aktif, coba akses halaman login berulang kali dalam waktu singkat. Kalau benar, server akan mulai merespons dengan kode 429 setelah limit tercapai.
Gunakan tools seperti curl atau ab (ApacheBench) untuk tes tekanan:
ab -n 20 -c 1 https://domainkamu.com/wp-login.php
Optimasi Tambahan:
- Kombinasikan dengan fail2ban untuk pemblokiran permanen.
- Gunakan Cloudflare untuk filtering level DNS.
- Jika pakai JetBackup, pastikan konfigurasi tidak menghambat cron job penting.
Kapan Harus Diaktifkan?
- Kalau kamu mulai melihat banyak login gagal
- Kalau server sering spike tiba-tiba tanpa sebab jelas
- Kalau ada aktivitas tidak normal dari IP asing
Fitur ini sangat cocok digunakan di VPS Flazz Networks, terutama yang menggunakan aplikasi WordPress, WHMCS, atau sistem login lain.
Buat kamu yang ingin server tetap stabil dan nggak mudah dijebol dari sisi login, konfigurasi rate limiting ini layak dicoba. Jika kamu butuh bantuan setup, audit keamanan, atau optimasi performa VPS, tim Flazz Networks siap bantu lewat:
- WhatsApp/Telegram: 0899-8130-330
- Website: https://www.flazznetworks.com/
- Instagram: https://www.instagram.com/flazznetworks



