Memasang Fail2Ban untuk Mengamankan SSH Server

Sebagai pemilik server, sudah suatu kewajiban kita untuk melindungi server kita. Salah satunya dari orang yang coba-coba untuk mengakses server kita. Umumnya cara ini menggunakan brute force login pada jalur komunikasi SSH.

Salah satu solusi yang sering dilakukan adalah mengganti port SSH. Bisa dikatakan, tindakan ini merupakan passive defense, yang berarti hanya menahan serangan secara sementara. Pada akhirnya dengan scanning port, penyerang tentu akan tahu port SSH server kita. Alangkah baiknya jika tindakan ini ditambahkan sebuah active defense, yakni sistem pertahanan yang bereaksi secara aktif menghadapi kemungkinan serangan. Dalam hal ini kita membicarakan Fail2Ban.

Apa itu Fail2Ban?

Menurut Wikipedia, Fail2Ban adalah sebuah aplikasi pencegah intrusi atau akses tak sah yang melindungi komputer/server dari serangan brute-force. Fail2Ban ditulis dengan menggunakan bahasa pemrograman Python, sehingga dapat berjalan di sistem POSIX yang memiliki antarmuka pengontrol paket data atau firewall yang terpasang secara lokal, misalnya iptables atau TCP Wrapper. Fail2Ban bekerja dengan membaca log dari sebuah program yang disetel untuk diawasi. Dalam hal ini tentu saja SSH server.

Sebagai permulaan, kita harus melakukan instalasi Fail2Ban. Untuk perintah di Debian, Ubuntu dan turunannya adalah sebagai berikut:

# apt install fail2ban

Install Fail2Ban

Penampakan instalasi Fail2Ban di server VPS saya yang Debian Buster.

Sedangkan untuk di CentOS dan turunannya adalah sebagai berikut:

# yum install epel-release
# yum install fail2ban

Konfigurasi SSHD Fail2Ban

Untuk baris pertama, kita memasang repository enterprise karena fail2ban tidak ada dalam paket standar CentOS. Setelah perintah-perintah selesai dijalankan, saatnya untuk melakukan konfigurasi setelan pada Fail2Ban. Jalankan perintah untuk melakukan editing pada file jail.conf yang ada di direktori /etc/fail2ban. Perintahnya bisa disesuaikan dengan editor yang anda gunakan.

# cd /etc/fail2ban
# cp jail.conf jail.conf.backup
# nano /etc/fail2ban/jail.conf

Baris pertama untuk masuk ke direktori konfigurasi Fail2Ban. Baris kedua untuk melakukan backup copy file jail.conf, siapa tahu salah edit. Setelah itu menggunakan editor nano untuk buka file jail.conf. Anda bisa menyesuikan dengan editor yang anda pakai. Setelah itu cari directive [sshd], tambahkan baris “enabled = true” seperti gambar di sebelah kanan. Setelah itu simpan dan restart Fail2Ban. Kali ini kedua jalur distro, yakni Debian dan CentOS sudah bersepakat mengenai cara start, stop dan restart daemon. Yep, ini dia:

# systemctl restart fail2ban

Anda bisa melihat hasilnya dengan menjalankan perintah ps aux untuk melihat apakah daemon Fail2Ban sudah berjalan atau belum. Selain itu anda juga dapat melihat progress Fail2Ban dengan mlihat log-nya. Secara default, log Fail2Ban ada di /var/log/fail2ban.log. Disitu anda akan melihat IP-IP yang mencoba untuk log-in ke server anda. Untuk melihat yang di-banned oleh Fail2Ban, anda dapat menjalankan perintah iptables -L sehingga muncul seperti ini:

Iptables Ban List

Selamat! Anda sudah satu langkah untuk mengamankan server anda. Saya ga bilang kalau server anda 100% aman, tapi setidaknya menghambat dan mempersulit orang untuk melakukan serangan kepada server anda. Ada pertanyaan? Silahkan di kolom komentar, ya.

Artikel ini diterbitkan pada

Penulis ini adalah penulis hantu. Keberadaannya hanya admin yang tahu. Tulisan yang dibuat oleh penulis ini bukan buatan dua penulis Hanya Lewat. Pada umumnya artikel berupa iklan atau sesuatu yang aneh dan diluar kebiasaan. Jika ingin mencaci maki, silahkan dikirim ke ghost@hanyalewat.com, supaya anda puas.

Kirim pendapat

Disclaimer: Komentar adalah tanggapan pribadi, tidak mewakili kebijakan Hanya Lewat. Redaksi berhak menyunting atau menghapus kata-kata yang berbau narsisme, promosi, spam, pelecehan, intimidasi dan kebencian terhadap suatu golongan.

Anda harus masuk untuk berpendapat.