Dalam dunia keamanan sistem Linux, terdapat banyak kesalahan yang sering dilakukan oleh administrator, baik karena ketidaktahuan maupun kelalaian. Salah satu kesalahan paling umum adalah tidak menggunakan Fail2Ban sebagai perlindungan tambahan terhadap serangan brute force pada server. Padahal, Fail2Ban telah terbukti sangat efektif untuk memperkuat keamanan layanan SSH, Apache, dan berbagai aplikasi internet lainnya yang rentan terhadap percobaan login berulang dalam waktu singkat.
Brute force attack merupakan metode yang digunakan penyerang untuk mencoba berbagai kemungkinan username dan password secara otomatis dan berulang (automated), dengan harapan dapat masuk ke sistem Anda. Tanpa perlindungan, server akan rentan terhadap percobaan login yang masif, yang tidak hanya mengancam data namun juga dapat menyebabkan gangguan layanan karena konsumsi resource yang tinggi.
Banyak administrator server yang hanya mengandalkan password yang kuat atau firewall tradisional tanpa memasang Fail2Ban. Hal ini merupakan kesalahan karena tanpa Fail2Ban, server tetap akan menerima dan memproses setiap percobaan login, walaupun akhirnya gagal. Akumulasi percobaan yang terjadi dapat menimbulkan log besar, resiko penemuan password, hingga menyebabkan sistem lamban atau down karena overloaded.
Untuk mengatasi masalah ini, satu solusi efektif adalah dengan instalasi dan konfigurasi Fail2Ban. Fail2Ban bekerja dengan cara membaca log sistem dan secara otomatis memblokir IP yang melakukan percobaan login berulang dalam waktu singkat, sehingga peluang brute force attack untuk menembus sistem sangat kecil.
sudo apt update
sudo apt install fail2ban
sudo systemctl enable fail2ban
sudo systemctl start fail2ban
Setelah instalasi, Anda harus melakukan konfigurasi untuk menyesuaikan layanan yang ingin dilindungi. Konfigurasi utama terletak pada file /etc/fail2ban/jail.conf (direkomendasikan membuat salinan pada jail.local agar update Fail2Ban tidak menghapus konfigurasi Anda).
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
sudo nano /etc/fail2ban/jail.local
jail.local, pastikan bagian berikut aktif:
[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
Keterangan:
enabled : Aktifkan proteksi pada SSHport : Sesuaikan dengan port SSH Andamaxretry : Jumlah percobaan login gagal sebelum IP diblokirsudo systemctl restart fail2ban
Setelah konfigurasi, Anda dapat mengecek status Fail2Ban dan memastikan layanan berfungsi dengan baik:
sudo fail2ban-client status
sudo fail2ban-client status sshd
Perintah di atas akan menampilkan daftar IP yang telah diblokir serta informasi lain terkait aktivitas Fail2Ban.
maxretry (jumlah percobaan), bantime (lama blokir), dan findtime (rentang waktu percobaan login) sesuai kebutuhan server.
/var/log/auth.log untuk memastikan tidak ada false positive.
jail.local.
Mengabaikan pemasangan Fail2Ban merupakan kesalahan yang dapat menimbulkan resiko besar bagi server Anda. Dengan menginstal dan mengkonfigurasi Fail2Ban secara tepat, server akan jauh lebih aman dari serangan brute force serta potensi compromise oleh attacker. Implementasi Fail2Ban adalah langkah sederhana, namun berdampak signifikan terhadap keamanan sistem. Pastikan Anda tidak melakukan kesalahan umum ini dan segera lindungi server Anda dengan Fail2Ban demi keamanan yang lebih optimal.