Sebelumnya pastikan versi fail2ban nya ada di versi terbaru 0.11.2 (saat ini) karena cara yang saya lakukan ga bisa jalan di versi 0.9.3, silahkan update dulu fail2ban nya di github fail2ban. Berikut cara setup nya:
- Buka file /etc/mysql/my.cnf tambahkan
[mysqld]
#just add below line
log_error = /var/log/mysql/error.log
Lalu restart service mysql nya
- Buka file /etc/fail2ban/jail.local (ingat, jangan write di jail.conf karena tiap ada update akan kembali ke default), cari line mysqld-auth
[mysqld-auth]
enabled = true
port = 3306
log-error = /var/log/mysql/error.log
backend = %(mysql_backend)s
maxretry = 3
findtime = 1d
bantime = 4w
Lalu restart service fail2ban & saatnya test
-
Coba login 3 kali dengan username & password yang ga ada di database
Coba Login
-
Cek /var/log/mysql/error.log, keliatan ada user gagal 3 kali
kawinloginLog di error.log mysql, 3 Kali Gagal Login
-
Cek log fail2ban, ada keterangan IP indihome tercinta saya di banned untuk remote mysql. Anda juga bisa melihat IP yang di blok menggunakan
sudo fail2ban-client status mysqld-auth
Log di fail2ban.log