Lewati ke konten

Proteksi brute-force & flood

MyPanel melindungi server Anda dari penebakan kata sandi (brute-force) dan banjir permintaan (lapisan aplikasi) dengan dua lapisan yang saling melengkapi — tanpa memerlukan WAF berat:

  1. Fail2ban — secara otomatis memblokir IP penyerang di tingkat sistem.
  2. Pembatasan laju nginx — meredam banjir permintaan per website.

Buka menu Brute-force protection. Panel mengelola Fail2ban secara visual:

  • Kotak ringkasan — apakah Fail2ban terpasang/berjalan, jumlah jail, dan total IP yang saat ini diblokir.
  • Proteksi brute-force satu klik — satu sakelar yang mengaktifkan set jail rekomendasi dengan default aman:
    • sshd — penebakan kata sandi SSH.
    • nginx-http-auth — kata sandi HTTP Basic auth yang salah.
    • nginx-limit-req — melampaui batas laju nginx (terhubung dengan lapisan pembatasan laju di bawah).
    • nginx-botsearch — pemindaian URL berbahaya.
  • Sesuaikan waktu pemblokiran (bantime, mis. 10m, 1h, 1d) dan maksimum percobaan ulang (maxretry).
  • Sebuah daftar IP yang saat ini diblokir per jail, masing-masing dengan tombol Unban (untuk saat Anda mengunci diri sendiri).

Panel menulis konfigurasinya ke file terpisah (/etc/fail2ban/jail.d/mypanel.local) — panel tidak pernah menyentuh konfigurasi sistem Anda — lalu memuat ulang Fail2ban. Jika pemuatan ulang gagal, panel memulihkan konfigurasi sebelumnya.

Di dalam setiap website, buka tab Nginx → Rate limiting. Aktifkan untuk meredam banjir permintaan (L7) dan memperlambat penebakan kata sandi (mis. wp-login.php):

  • 3 preset — Relaxed / Normal / Strict — atau atur sendiri:
    • Permintaan dinamis/detik per IP (rate).
    • Toleransi burst untuk lonjakan singkat.
    • Koneksi bersamaan per IP (conn).
  • Aset statis (gambar, CSS, JS, font…) dikecualikan dari perhitungan, sehingga pemuatan halaman normal dengan banyak file tidak diblokir secara keliru (429).

Ketika batas terlampaui, nginx mengembalikan 429 Too Many Requests. Jail nginx-limit-req dari Fail2ban membaca peristiwa 429 tersebut untuk memblokir sepenuhnya IP pelanggar — kedua lapisan saling memperkuat.