GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Menginstal dan Mengonfigurasi Fail2ban di Ubuntu 20.04

Layanan apa pun yang terpapar ke Internet berisiko terkena serangan malware. Misalnya, jika Anda menjalankan layanan di jaringan yang tersedia untuk umum, penyerang dapat menggunakan upaya paksa untuk masuk ke akun Anda.

Fail2ban adalah alat yang membantu melindungi mesin Linux Anda dari kekerasan dan serangan otomatis lainnya dengan memantau log layanan untuk aktivitas jahat. Ini menggunakan ekspresi reguler untuk memindai file log. Semua entri yang cocok dengan pola dihitung, dan ketika jumlahnya mencapai ambang batas tertentu yang telah ditentukan, Fail2ban melarang IP yang melanggar menggunakan firewall sistem untuk jangka waktu tertentu. Saat periode larangan berakhir, alamat IP akan dihapus dari daftar larangan.

Artikel ini menjelaskan cara menginstal dan mengkonfigurasi Fail2ban di Ubuntu 20.04.

Menginstal Fail2ban di Ubuntu #

Paket Fail2ban disertakan dalam repositori default Ubuntu 20.04. Untuk menginstalnya, masukkan perintah berikut sebagai root atau pengguna dengan hak sudo:

sudo apt updatesudo apt install fail2ban

Setelah instalasi selesai, layanan Fail2ban akan dimulai secara otomatis. Anda dapat memverifikasinya dengan memeriksa status layanan:

sudo systemctl status fail2ban

Outputnya akan terlihat seperti ini:

● fail2ban.service - Fail2Ban Service
     Loaded: loaded (/lib/systemd/system/fail2ban.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2020-08-19 06:16:29 UTC; 27s ago
       Docs: man:fail2ban(1)
   Main PID: 1251 (f2b/server)
      Tasks: 5 (limit: 1079)
     Memory: 13.8M
     CGroup: /system.slice/fail2ban.service
             └─1251 /usr/bin/python3 /usr/bin/fail2ban-server -xf start

Itu dia. Pada titik ini, Anda telah menjalankan Fail2Ban di server Ubuntu Anda.

Konfigurasi Fail2ban #

Instalasi Fail2ban default dilengkapi dengan dua file konfigurasi, /etc/fail2ban/jail.conf dan /etc/fail2ban/jail.d/defaults-debian.conf . Tidak disarankan untuk mengubah file-file ini karena dapat ditimpa ketika paket diperbarui.

Fail2ban membaca file konfigurasi dalam urutan berikut. Setiap .local file menimpa pengaturan dari .conf berkas:

  • /etc/fail2ban/jail.conf
  • /etc/fail2ban/jail.d/*.conf
  • /etc/fail2ban/jail.local
  • /etc/fail2ban/jail.d/*.local

Untuk sebagian besar pengguna, cara termudah untuk mengkonfigurasi Fail2ban adalah dengan menyalin jail.conf ke jail.local dan ubah .local mengajukan. Pengguna yang lebih mahir dapat membuat .local file konfigurasi dari awal. .local file tidak harus menyertakan semua pengaturan dari .conf yang sesuai file, hanya yang ingin Anda timpa.

Buat .local file konfigurasi dari jail.conf default berkas:

sudo cp /etc/fail2ban/jail.{conf,local}

Untuk mulai mengonfigurasi server Fail2ban, buka jail.local file dengan editor teks Anda:

sudo nano /etc/fail2ban/jail.local

File menyertakan komentar yang menjelaskan apa yang dilakukan setiap opsi konfigurasi. Dalam contoh ini, kami akan mengubah pengaturan dasar.

Alamat IP Daftar Putih #

Alamat IP, rentang IP, atau host yang ingin Anda kecualikan dari larangan dapat ditambahkan ke ignoreip pengarahan. Di sini Anda harus menambahkan alamat IP PC lokal Anda dan semua mesin lain yang ingin Anda masukkan ke daftar putih.

Batalkan komentar pada baris yang dimulai dengan ignoreip dan tambahkan alamat IP Anda yang dipisahkan oleh spasi:

/etc/fail2ban/jail.local
ignoreip = 127.0.0.1/8 ::1 123.123.123.123 192.168.1.0/24

Setelan Larangan #

Nilai bantime , findtime , dan maxretry opsi menentukan waktu larangan dan kondisi larangan.

bantime adalah durasi di mana IP dilarang. Ketika tidak ada sufiks yang ditentukan, defaultnya adalah detik. Secara default, bantime nilai diatur ke 10 menit. Umumnya, sebagian besar pengguna ingin menetapkan waktu larangan yang lebih lama. Ubah nilainya sesuai keinginan Anda:

/etc/fail2ban/jail.local
bantime  = 1d

Untuk memblokir IP secara permanen, gunakan angka negatif.

findtime adalah durasi antara jumlah kegagalan sebelum larangan ditetapkan. Misalnya, jika Fail2ban diatur untuk memblokir IP setelah lima kegagalan (maxretry , lihat di bawah), kegagalan tersebut harus terjadi dalam findtime durasi.

/etc/fail2ban/jail.local
findtime  = 10m

maxretry adalah jumlah kegagalan sebelum IP dilarang. Nilai default disetel ke lima, yang seharusnya baik untuk sebagian besar pengguna.

/etc/fail2ban/jail.local
maxretry = 5

Pemberitahuan Email #

Fail2ban dapat mengirim peringatan email ketika IP telah diblokir. Untuk menerima email, Anda harus menginstal SMTP di server Anda dan mengubah tindakan default, yang hanya memblokir IP menjadi %(action_mw)s , seperti yang ditunjukkan di bawah ini:

/etc/fail2ban/jail.local
action = %(action_mw)s

%(action_mw)s melarang IP yang melanggar dan mengirim email dengan laporan whois. Jika Anda ingin menyertakan log yang relevan dalam email, setel tindakan ke %(action_mwl)s .

Anda juga dapat menyesuaikan alamat email pengirim dan penerima:

/etc/fail2ban/jail.local
destemail = [email protected]

sender = [email protected]

Fail2ban Jails #

Fail2ban menggunakan konsep penjara. Penjara menjelaskan layanan dan menyertakan filter dan tindakan. Entri log yang cocok dengan pola pencarian dihitung, dan ketika kondisi yang telah ditentukan terpenuhi, tindakan yang sesuai akan dijalankan.

Fail2ban dikirimkan dengan sejumlah penjara untuk layanan yang berbeda. Anda juga dapat membuat konfigurasi jail Anda sendiri.

Secara default, hanya sshjail yang diaktifkan. Untuk mengaktifkan jail, Anda perlu menambahkan enabled = true setelah gelar penjara. Contoh berikut menunjukkan cara mengaktifkan jail proftpd:

/etc/fail2ban/jail.local
[proftpd]
enabled  = true
port     = ftp,ftp-data,ftps,ftps-data
logpath  = %(proftpd_log)s
backend  = %(proftpd_backend)s

Setting yang sudah kita bahas di bagian sebelumnya, bisa diatur per jail. Ini contohnya:

/etc/fail2ban/jail.local
[sshd]
enabled   = true
maxretry  = 3
findtime  = 1d
bantime   = 4w
ignoreip  = 127.0.0.1/8 23.34.45.56

Filter terletak di /etc/fail2ban/filter.d direktori, disimpan dalam file dengan nama yang sama dengan jail. Jika Anda memiliki pengaturan dan pengalaman khusus dengan ekspresi reguler, Anda dapat menyempurnakan filter.

Setiap kali Anda mengedit file konfigurasi, Anda harus memulai ulang layanan Fail2ban agar perubahan diterapkan:

sudo systemctl restart fail2ban

Klien Fail2ban #

Fail2ban dikirimkan dengan alat baris perintah bernama fail2ban-client yang dapat Anda gunakan untuk berinteraksi dengan layanan Fail2ban.

Untuk melihat semua opsi yang tersedia, jalankan perintah dengan -h pilihan:

fail2ban-client -h

Alat ini dapat digunakan untuk melarang/membatalkan larangan alamat IP, mengubah pengaturan, memulai ulang layanan, dan banyak lagi. Berikut beberapa contohnya:

  • Periksa status penjara:

    sudo fail2ban-client status sshd
  • Membatalkan pemblokiran IP:

    sudo fail2ban-client set sshd unbanip 23.34.45.56
  • Larang IP:

    sudo fail2ban-client set sshd banip 23.34.45.56

Ubuntu
  1. Cara menginstal dan mengkonfigurasi Fail2Ban di Ubuntu 20.04

  2. Cara Menginstal dan Mengonfigurasi Fail2ban di Ubuntu 20.04

  3. Bagaimana Cara Menginstal dan Mengonfigurasi Fail2ban di Ubuntu?

  1. Cara Menginstal dan Mengonfigurasi Redis di Ubuntu 18.04

  2. Cara Menginstal dan Mengkonfigurasi Redmine di Ubuntu 18.04

  3. Cara Menginstal dan Mengonfigurasi Fail2ban di Ubuntu 20.04 LTS

  1. Cara Menginstal dan Mengonfigurasi Samba di Ubuntu 18.04

  2. Cara Menginstal dan Mengonfigurasi Redis di Ubuntu 20.04

  3. Cara Menginstal dan Mengonfigurasi Fail2ban di CentOS 8