
Fail2ban adalah alat yang dapat Anda gunakan untuk mengurangi dampak serangan pada server Anda. Biasanya Anda mengkonfigurasinya untuk memantau file log untuk aktivitas mencurigakan. Kemudian setelah aktivitas melewati ambang batas, Anda dapat meminta aktivitas tersebut mengambil tindakan, seperti memblokir alamat IP sumber di firewall Anda. Ini adalah cara yang baik untuk menghentikan serangan sejak dini, namun tidak sepenuhnya mencegahnya dan anda juga dapat mengirimkan pesan lognya ke email anda.
Karena popularitasnya, WordPress sering menjadi sasaran serangan otomatis. Kita sering melihat serangan bruteforce yang menargetkan xmlrpc.php atau wp-login.php, serangan ini mengandalkan permintaan dalam jumlah besar dengan harapan pada akhirnya akan berhasil. Menggunakan kata sandi yang kuat, terutama untuk akun dengan akses admin, penting untuk mengurangi risiko serangan. Fail2ban dapat digunakan untuk memperlambat penyerang. Hal ini membantu karena dua alasan: membuat mereka kecil kemungkinannya untuk berhasil; ini mengurangi beban pada server yang disebabkan oleh pemrosesan permintaan ini.
lakukan pembuatan file filter wordpress.conf pada directory /etc/fail2ban/filter.d/, caranya yaitu :
sudo nano /etc/fail2ban/filter.d/wordpress.conf
masukkan perintahnya seperti ini :
[Definition] failregex = ^<HOST> .* "(GET|POST) /+wp-login.php ^<HOST> .* "(GET|POST) /+xmlrpc.php
jangan lupa disimpan konfigurasinya. Langkah selanjutnya adalah membuat file wordpress.conf pada directory /etc/fail2ban/jail.d/, seperti ini:
sudo nano /etc/fail2ban/jail.d/wordpress.conf
lalu edit seperti ini :
[wordpress] enabled = true port = http,https filter = wordpress action = iptables-multiport[name=wordpress, port="http,https", protocol=tcp] logpath = /var/log/apache2/error.log maxretry = 3 findtime = 5m bantime = 48h ignoreip = 127.0.0.1/8 192.168.1.254
jangan lupa disimpan. langkah selanjutnya adalah melakukan restart Fail2ban, caranya seperti ini :
sudo systemctl restart fail2ban
cek status dari fail2ban apakah error atau tidak, caranya yaitu :
root@mail:~# sudo systemctl status fail2ban ● fail2ban.service - Fail2Ban Service Loaded: loaded (/usr/lib/systemd/system/fail2ban.service; enabled; preset: enabled) Active: active (running) since Fri 2024-05-24 06:27:59 WIB; 1 day 4h ago Docs: man:fail2ban(1) Main PID: 771 (fail2ban-server) Tasks: 41 (limit: 9396) Memory: 29.4M (peak: 40.6M) CPU: 11min 15.068s CGroup: /system.slice/fail2ban.service └─771 /usr/bin/python3 /usr/bin/fail2ban-server -xf start May 24 06:27:59 mail systemd[1]: Started fail2ban.service - Fail2Ban Service. May 24 06:27:59 mail fail2ban-server[771]: Server ready
jika tidak ada error maka terlihat seperti diatas dan selamat konfigurasi wordpress pada fail2ban sudah berhasil dilakukan.
sedikit tambahan untuk mengamankan halaman login administrator dari wordpress kalian, maka kalian harus merubah wp-admin menjadi yang lain, dengan cara menginstall sebuah plugin yang bernama WPS Hide Login.
untuk konfigurasi WPS Hide Login, ada di menu Settings > WPS Hide Login. setelah itu kalian edit seperti ini :
Keterangan :
kalian edit pada Login url, ganti tulisan login atau wp-admin dengan yang kalian inginkan, tapi jangan sampai lupa, seperti contoh punya saya. jangan lupa di simpan dengan cara klik tombol Save Changes.
Tempatnya berbagi seputar ilmu Teknologi dan Informasi