Cara Install Fail2Ban di VPS Debian/Ubuntu

Cara Install Fail2Ban di VPS Debian/Ubuntu

Berbicara mengenai keamanan server, kita pasti menghadapi masalah serangan brute-force. Serangan ini dapat diatasi dengan menggunakan fail2ban. Pada kesempatan ini, saya akan memberikan tutorial cara install fail2ban di VPS Debian/Ubuntu beserta dengan konfigurasinya.

Apa itu Fail2Ban? Apa Manfaatnya?

Fail2Ban adalah program sederhana yang didevelop oleh komunitas pengguna linux untuk meningkatkan keamanan server kita. Sistem kerja dari fail2ban adalah dengan memantau log sistem secara terus menerus dan memblokir IP Address yang berulang kali gagal login ke dalam server kita.

Fail2Ban sangat bermanfaat untuk mengamankan server kita dari serangan brute-force. Serangan brute-force adalah serangan yang ditujukan ke server kita dengan mencoba-coba kombinasi username dan password secara acak dan terus menerus. Mudahnya, hacker mencoba-coba login ke server Anda dengan memasukkan password acak (try and error) sampai berhasil menemukan kombinasi username dan password yang tepat. (Jadi hacker akan login dengan user root, password 123456. Jika gagal, mereka akan coba login ulang dengan password 1234567. Jika gagal lagi, hacker akan mencoba login ulang dengan password 12345678. Begitu seterusnya sampai hacker berhasil menemukan password dari server Anda)

Di sini, fail2ban akan langsung memblokir IP Address hacker tersebut apabila telah gagal login pada batas tertentu. Jadi hacker tersebut tidak bisa mencoba login lagi ke server kita. Jadi kebayang kan seberapa bermanfaatnya fail2ban pada VPS linux kita?

Kelebihan dari Fail2Ban adalah banyaknya protocol/service yang didukung & dapat diproteksi oleh fail2ban. Fail2Ban dapat melindungi  SSH (OpenSSH & Dropbear), Apache, FTP (proftpd dan vsftpd), Mail Service (postfix), dan banyak serivce lainnya. Fail2Ban juga berjalan secara otomatis sehingga Anda tidak perlu memblokir IP hacker secara manual melalui iptables.

Melihat banyak manfaat & keuntungan dari fail2ban, maka tidak ada salahnya jika kita mengamankan server kita dengan fail2ban. Oke langsung saja kita bahas tutorial cara install fail2ban di VPS Debian/Ubuntu beserta dengan konfigurasinya.

Tutorial Cara Install Fail2Ban di VPS Debian/Ubuntu

  1. Login ke VPS melalui SSH. Pastikan Anda login dengan menggunakan user root.
  2. Update repository server. Masukkan perintah berikut:
    apt-get -y update
  3. Install Fail2Ban di VPS Linux dengan memasukkan perintah berikut:
    apt-get -y install fail2ban
  4. Copy configurasi default dari fail2ban (dari jail.conf copy ke jail.local). Di sini, konfigurasi jail.local akan mengoverwrite/menimpa konfigurasi dari jail.conf. Sehingga konfigurasi yang diload adalah konfigurasi dari file jail.local.
    cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
  5. Edit konfigurasi dari Fail2Ban. Masukkan perintah berikut:
    nano /etc/fail2ban/jail.local

    Di sini, ada beberapa konfigurasi yang dapat Anda rubah. Sesuaikan konfigurasi ini dengan apa yang Anda butuhkan. (Misalkan anda ingin memproteksi dropbear, maka Anda harus mengubah status enabled ke true pada  layanan dropbear. Dan sebagainya.)
    Penjelasan dari konfigurasi Fail2Ban adalah sebagai berikut:

    • ignoreip: IP yang akan diwhitelist/dikecualikan dari pengawasan fail2Ban. Sehingga IP tersebut tidak akan diblokir meski telah gagal login berulang kali. Jika Anda ingin menambahkan IP lebih dari satu, pisahkan dengan spasi.
    • bantime: Lama pemblokiran yang dilakukan fail2ban, dinyatakan dalam satuan detik. Secaraa default bernilai 600 detik atau 10 menit. Jika ingin melakukan ban permanen, isi value nya menjadi “-1”  (tidak direkomendasikan)
    • maxretry: Jumlah kesalahan login yang diizinkan sebelum IP Address diblokir oleh fail2ban. Secara default bernilai 3
    • destemail: Email yang akan dikirimi notifikasi saat ditemukan adanya upaya penyerangan brute-force. Isikan dengan alamat email Anda (misal: steven@hostingtermurah.net). Pastikan Anda mempunyai mailserver aktif di VPS Anda
      Konfigurasi Fail2Ban - General
      Sekarang scroll ke bawah hingga , Anda akan melihat konfigurasi jail. Tulsainnya kurang lebih seperti ini:

      [ssh]
      enabled = true
      port = ssh
      filter = sshd
      logpath = /var/log/auth.log
      maxretry = 6
      
      [dropbear]
      enabled = false
      port = ssh
      filter = sshd
      logpath = /var/log/dropbear
      maxretry = 6
      ... (Dan Seterusnya)

      Penjelasannya adalah sebagai berikut:

    • [ssh] atau [dropbear] atau [nama_service]: Nama program/service yang diproteksi oleh fail2ban
    • enabled : Untuk mengaktifkan atau menonaktifkan proteksi terhadap program tersebut. Untuk mengaktifkan isi dengan true. Untuk menonakitfkan isi dengan false.
    • port: Port dari layanan yang akan diproteksi dan diblokir. Tidak perlu diedit jika Anda tidak merubah port defaultnya.
      NB:
      – Jika Anda telah mengubah port default service anda, isikan dengan angka port program Anda. Misal Anda merubah port default ssh ke port 2222, maka masukkan “port = 2222″ pada konfigurasinya.
      – Jika service/program anda berjalan lebih dari satu port, Anda dapat menambahkan port dengan memberikan tanda koma. Misal SSH berjalan di port 22, 109, dan 143, maka masukkan “port = 22, 109, 133” dalam konfigurasinya.
      – Jika Anda ingin memblokir port pada range tertentu, maka Anda bisa gunakan tanda titik dua (:). Misal Anda ingin memblokir port di range 1000-2000, maka isi “port = 1000:2000” pada konfigurasinya.
    • logpath: Lokasi log file dari program yang diproteksi. Logfile digunakan fail2ban untuk memonitor kegagalan login. Tidak perlu diedit apapun
    • filter: Merupakan cara fail2ban untuk mengidentifikasi kegagalan login dengan menggunakan regex. Jangan diedit. Biarkan secara default.
    • maxretry: Jumlah kesalahan login yang diizinkan sebelum diblokir. Jumlah maxretry di bagian ini akan mengoverwrite/menimpa konfigurasi di bagian atas.
      Konfigurasi Fail2Ban - Jail
      Jika Anda telah selesai mengedit konfigurasinya sesuai dengan kebutuhan Anda, simpan konfigurasi dengan menekan tombol CTRL + X, tekan Y, Lalu Enter.
  6. Restart Fail2Ban agar perubahan pada konfigurasi yang telah kita lakukan dapat diload. Masukkan perintah berikut:
    service fail2ban restart
  7. Anda dapat memeriksa apakah layanan fail2ban anda sudah aktif dengan memasukkan perintah berikut:
    fail2ban-client status

    Status Fail2ban Aktif
    Pada screenshot dapat dilihat bahwa layanan fail2ban untuk service SSH sudah aktif.

Demikianlah tutorial cara install fail2ban di VPS Debian/Ubuntu beserta dengan cara konfigurasinya. Semoga setelah membaca tutorial ini, Anda dapat tahu bagaimana cara menginstall Fail2Ban di VPS dan cara mengkonfigurasi Fail2Ban di VPS. Apabila Anda mempuyai masalah, kendala atau pertanyaan mengenai cara  install Fail2Ban di VPS Debian/Ubuntu atau jika Anda mempunyai pertanyaan tentang bagaimana cara mengkonfigurasi fail2ban di VPS, Anda dapat tanyakan melalui kolom komentar di bawah.

 

About the Author
Steven Indarto
A person who loves mathematics, physics and science

One thought on “Cara Install Fail2Ban di VPS Debian/Ubuntu

  1. Imam Ridlo - August 28, 2018 at 6:48 pm

    Terima kasih pak sangat berguna tutorialnya

    Reply

Leave a Reply