Membatasi jumlah koneksi dengan iptables

Ada salah satu website milik teman saya memiliki log akses yang cukup unik. Yakni berusaha membuka halaman yang tidak ada dan dari format URLnya tampaknya acak. Ya memang langsung 404, tapi kalau datangnya banyak ya KO juga VPSnya karena tetap akan diproses requestnya. Kalau sudah mengalami hal seperti (atau bahkan belum) saran saya lakukan rate limiting supaya usaha jahat tidak kebablasan.

Karena hampir pada setiap server Linux defaultnya pakai iptables (lainnya: firewalld dan ufw) maka saya jelaskan pakai peraturan aplikasi firewall ini. Dan aslinya mudah sekali, tinggal anda eksekusi perintah seperti ini:

iptables -A INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --update --seconds 300 --hitcount 100 -j DROP
iptables -A INPUT -p tcp --dport 443 -i eth0 -m state --state NEW -m recent --update --seconds 300 --hitcount 100 -j DROP

Maksudnya adalah setiap sambungan masuk dengan protokol TCP, pada port 80 (HTTP) dan 443 (HTTPS), apabila dalam 5 menit ada lebih dari 100 jumlahnya akan langsung diblokir. Anda bisa dan disarankan memodifikasi parameternya agar cocok dengan kondisi anda. Ini cuma referensi awal saja.

2 pemikiran pada “Membatasi jumlah koneksi dengan iptables

  1. klo saya ingin membatasi jumlah koneksi website saya itu cuman 1000 pengakses permenit bagai mana mas..? soalnya pernah lebih dari 1500 pengkases permenit website saya langsung lambat karena RAM langsung sekarat.. mohon pencerahannya

Tinggalkan komentar