--- title: Brute Force Protection description: "Percobaan login berulang ke SSH, wp-login, atau cPanel. Batasi percobaan, aktifkan 2FA, dan blokir sumbernya." canonical: https://penasihathosting.com/wikihosting/brute-force type: wiki locale: id updated: 2026-10-29 author: Willya Randika --- # Brute Force Protection ## Overview - **Summary:** Percobaan login berulang ke SSH, wp-login, atau cPanel. Batasi percobaan, aktifkan 2FA, dan blokir sumbernya. - **Author:** Willya Randika ([profile](/penulis/willya-randika)) ## Article Brute force adalah percobaan menebak kredensial secara berulang. Sasaran yang paling sering adalah SSH, wp-login, cPanel, dan endpoint API. Penyerang modern jarang mencoba satu akun terus-menerus. Mereka memakai daftar password bocor dan mencoba banyak akun dari banyak IP supaya tidak cepat terdeteksi. ## Tanda di server Di server Linux, `journalctl -u ssh` akan dipenuhi pesan `Failed password for root` atau nama user acak. Di WordPress, log akses menunjukkan ratusan request ke `wp-login.php` atau `xmlrpc.php`. cPanel juga bisa mencatat login gagal dari negara yang tidak Anda gunakan. Kalau CPU naik tanpa kenaikan pengunjung, cek apakah PHP terus memproses halaman login. Kadang serangan tidak menghabiskan bandwidth, tapi menghabiskan worker dan koneksi database. ## Yang perlu dilakukan Matikan login password SSH kalau memungkinkan. Gunakan key, set `PasswordAuthentication no` dan `PermitRootLogin no` di `/etc/ssh/sshd_config`, lalu uji dengan sesi baru sebelum menutup sesi lama. Kalau password masih diperlukan, batasi port atau sumber IP. Pasang fail2ban untuk mengurangi tebakan otomatis. Contoh `/etc/fail2ban/jail.local`: ```ini [sshd] enabled = true maxretry = 5 findtime = 10m bantime = 1h ``` Setelah restart, cek dengan `fail2ban-client status sshd`. Untuk WordPress, gunakan filter log akses dan jail yang membaca `wp-login.php`, atau plugin keamanan yang punya rate limit sendiri. Aktifkan 2FA. [Two-Factor Authentication](/wikihosting/two-factor-authentication) membuat password bocor tidak cukup untuk masuk. Simpan kode pemulihan di tempat yang tidak ikut hilang saat ponsel rusak. ## Yang sering bikin masalah Kalau situs di balik CDN atau reverse proxy, log berisi IP proxy. fail2ban bisa memblokir IP yang salah. Konfigurasikan `real_ip` atau modul yang membaca `X-Forwarded-For` dengan benar. Saat menguji aturan SSH, pertahankan satu sesi yang sudah login dan siapkan akses konsol provider. Jangan menutup sesi lama sebelum sesi baru terbukti bisa masuk. Bantime yang terlalu pendek membuat bot cepat kembali. Untuk serangan berulang, gunakan satu jam atau lebih. Tapi ingat, fail2ban bukan proteksi DDoS. Untuk banjir trafik, lihat [DDoS](/wikihosting/ddos) dan [WAF](/wikihosting/waf). ## FAQ Tidak. Fail2ban mengurangi tebakan password, tapi plugin rentan, akun lemah, dan file malware tetap perlu ditangani dengan update, 2FA, dan pemindaian. Itu perilaku yang diinginkan. Gunakan `fail2ban-client set sshd unbanip IP_ANDA` dari sesi lain, lalu perbaiki kredensial. Hanya mengurangi noise otomatis. Itu bukan keamanan sungguhan. Key-based auth, 2FA, dan firewall tetap lebih penting.