spot_img

Konfigurasi Fail2Ban di Ubuntu untuk Blokir Serangan WordPress

Jika Anda menggunakan WordPress + OpenLiteSpeed di Ubuntu Server, mungkin pernah melihat banyak serangan otomatis ke wp-login.php atau xmlrpc.php. Biasanya plugin Wordfence akan merespons dengan mengunci akses menjadi HTTP 503 “Service Unavailable”, namun tidak memblokir serangan total dan tetap membebani server bahkan bisa menjadi over load.

Solusi terbaik adalah mengintegrasikan Fail2Ban agar IP penyerang langsung diblokir di level firewall server. Namun, kita harus hati-hati agar Googlebot, Bingbot, dan crawler baik lainnya tidak ikut terblokir.


Mengapa Perlu Fail2Ban?

  • Mengurangi beban CPU & RAM akibat brute force login.
  • Memblokir scanner otomatis (mencari *.php backdoor).
  • Memberi lapisan keamanan tambahan di luar WordPress.
  • Aman untuk SEO jika crawler baik tidak di-ban.

Konfigurasi Filter Fail2Ban

Buat file filter baru:

sudo nano /etc/fail2ban/filter.d/wordfence-503.conf

Isi dengan:

[Definition]
failregex = ^"<HOST> - - \[.*\] ".*" 503 [0-9]+ ".*" ".*""
ignoreregex = ".*Googlebot.*"
              ".*bingbot.*"
              ".*Slurp.*"
              ".*DuckDuckBot.*"
              ".*Baiduspider.*"
              ".*YandexBot.*"
              ".*AhrefsBot.*"
              ".*SemrushBot.*"
              ".*MJ12bot.*"
              ".*DotBot.*"

👉 failregex akan mendeteksi request dengan kode 503.
👉 ignoreregex memastikan crawler baik tidak ikut di-ban.

Baca Juga  Pentingnya Menjaga Keamanan Situs WordPress

Pastikan lokasi file log sudah sesuai, atau Anda bisa mencari terlebih dahulu lokasi file log untuk situs Anda, disini saya menggunakan contoh file log yang dihasilkan oleh OpenLiteSpeed dengan panel kontrol CyberPanel.


Konfigurasi Jail Fail2Ban

Edit file jail:

sudo nano /etc/fail2ban/jail.local

Tambahkan:

[wordfence-503]
enabled  = true
filter   = wordfence-503
port     = http,https
logpath  = /home/*/logs/*.access_log
maxretry = 1
bantime  = 86400  #akan diban selama 1 hari, atau bisa Anda sesuaikan (perdetik)
findtime = 600
backend  = auto
banaction = nftables

Testing & Validasi

  1. Cek regex: sudo fail2ban-regex /home/domain.com/logs/domain.com.access_log /etc/fail2ban/filter.d/wordfence-503.conf
  2. Reload Fail2Ban: sudo fail2ban-client reload
  3. Lihat status jail: sudo fail2ban-client status wordfence-503

Jika berhasil, IP penyerang akan otomatis muncul di Banned IP list, seperti gambar dibawah


Kesimpulan

Dengan integrasi Fail2Ban + Wordfence:

  • Serangan otomatis ke WordPress (HTTP 503) langsung diblokir di firewall.
  • Crawler baik (Googlebot, Bingbot, Yandex, dll.) tetap bisa mengindeks website tanpa hambatan.
  • Website jadi lebih aman & SEO tetap terjaga.

📌 FAQ

Q1: Apa fungsi Fail2Ban untuk WordPress?
A: Fail2Ban melindungi server dengan memblokir IP yang mencurigakan langsung di level firewall, sehingga mengurangi brute force login dan serangan bot.

Baca Juga  Tutorial Cara Membuat Swap RAM di Centos

Q2: Apakah Googlebot bisa ikut terblokir oleh Fail2Ban?
A: Tidak, jika kita menambahkan ignoreregex untuk mengecualikan Googlebot, Bingbot, dan crawler baik lainnya.

Q3: Bagaimana cara test regex Fail2Ban di Ubuntu?
A: Gunakan perintah fail2ban-regex untuk menguji filter terhadap file log agar memastikan pola sudah sesuai.

Q4: Apakah Fail2Ban menggantikan plugin Wordfence?
A: Tidak, Fail2Ban melengkapi Wordfence. Wordfence mendeteksi serangan di level aplikasi, sementara Fail2Ban menghentikan serangan di level firewall.

Acep Supriatna
Acep Supriatnahttps://tasikhost.com
Sukses itu bonus, menuju kesuksesan itu baru pilihan. Jangan menunda kesempatan yang datang, sebelum didahului orang lain

Komentar

spot_imgspot_imgspot_img

Lainnya

spot_img

Ikuti Kami

0FansSuka
0PengikutMengikuti
0PengikutMengikuti

Mungkin Tertarik

spot_img