GNU/Linux >> Belajar Linux >  >> Ubuntu

Instal dan Konfigurasi Fail2ban di Ubuntu 20.04

Fail2ban adalah kerangka kerja keamanan sumber terbuka yang ditulis dengan Python yang melindungi server dari serangan brute force . Ini memindai file log dan melarang alamat IP yang melakukan upaya login yang gagal. Ia bekerja dengan memperbarui firewall untuk menolak koneksi baru dari alamat IP tersebut untuk jangka waktu yang dapat dikonfigurasi.

Secara default, Fail2ban menggunakan Iptables dan memungkinkan untuk digunakan dengan firewall lain. Dukungan Fail2ban untuk IPv4 dan IPv6.

Fail2ban secara default dikonfigurasi untuk memantau upaya login SSH dan dapat memantau file log lainnya seperti untuk Apache, vsftpd, dan Postfix, dll.

Dalam tutorial ini, saya akan memandu Anda melalui cara menginstal dan mengkonfigurasi fail2ban di Ubuntu 20.04.

Instal Fail2ban di Ubuntu

Untuk memulai, buka terminal Anda dan perbarui daftar paket.

$ sudo apt update

Fail2Ban sudah dikemas dengan sebagian besar distribusi Linux. Untuk menginstal fail2ban menggunakan manajer paket APT, jalankan:

$ sudo apt install fail2ban

Setelah diinstal, verifikasi apakah itu berjalan dengan:

$ sudo systemctl status fail2ban

Dari output tersebut, kita dapat melihat bahwa layanan fail2ban aktif dan berjalan seperti yang diharapkan.

Untuk memeriksa proses fail2ban berjalan, ketik:

$ sudo ps -efww | egrep fail2ban

Keluaran:

root     1310843       1  0 11:17 ?        00:00:02 /usr/bin/python3 /usr/bin/fail2ban-server -xf start

Besar. Mari kita lihat ikhtisar file konfigurasi yang terkait dengan Fail2ban dan cara mengubah pengaturan ke alamat IP daftar hitam atau daftar putih.

Ikhtisar file konfigurasi

File konfigurasi Fail2ban terletak di /etc/fail2ban direktori seperti yang ditunjukkan.

File konfigurasi utama adalah /etc/fail2ban/jail.conf   dan /etc/fail2ban/jail.d/defaults-debian.conf .

Apa pun yang Anda lakukan, tidak disarankan untuk memodifikasi file-file ini karena ada kemungkinan besar mereka akan ditimpa ketika paket fail2ban diperbarui.

Sebagai solusinya, cara yang disarankan untuk mengonfigurasi Fail2ban adalah dengan membuat salinan jail.conf file ke jail.local dan kemudian tentukan pengaturan Anda sendiri. Anda tidak harus memasukkan semua pengaturan dari jail.conf file, hanya yang ingin Anda timpa.

Jadi, mari kita buat dulu jail.local file konfigurasi sebagai berikut.

$ sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

Sekarang, menggunakan editor teks favorit Anda, buka file tersebut. Di sini, saya menggunakan editor vim.

$ sudo vim /etc/fail2ban/jail.local

Mengizinkan alamat IP

Menggunakan ignoreip direktif, Anda dapat mengecualikan alamat IP, rentang IP, atau seluruh subnet agar tidak dilarang. Di sinilah Anda menambahkan alamat IP dari mesin jarak jauh yang ingin Anda masukkan ke daftar putih atau izinkan akses secara sederhana. Beberapa IP dapat ditambahkan menggunakan spasi atau koma.

Misalnya, untuk memasukkan alamat IP ke daftar putih 192.168.2.50 , 192.168.2.100 tambahkan entri sebagai berikut.

Setelan larangan

Kondisi larangan ditentukan oleh parameter berikut:

  1. jam istirahat
  2. menemukan waktu
  3. maxretry

jamban - Ini adalah periode di mana alamat IP dilarang atau ditolak aksesnya untuk mencoba terhubung kembali dengan server. Secara default, ini disetel ke 10 menit, tetapi jangan ragu untuk menyetelnya sesuai keinginan Anda.

waktu cari - Ini adalah durasi antara upaya login yang gagal sebelum larangan diterapkan. Ini diatur ke 10 menit. Artinya, jika Anda mencoba login SSH dan kegagalan mencapai maxtry nilai dalam jangka waktu 10 menit, maka IP yang Anda sambungkan akan diblokir.

maxretry - Ini menunjukkan jumlah maksimum upaya koneksi yang gagal sebelum IP dilarang. B default, ini diatur ke 5 detik yang seharusnya baik-baik saja, tapi saya lebih suka 3 detik untuk meminimalkan dibombardir dengan upaya koneksi.

Pemberitahuan email

Fail2ban memiliki kemampuan untuk mengirim peringatan email setelah alamat IP diblokir. Untuk mengirim dan menerima email, Anda harus menginstal dan mengonfigurasi server SMTP. Untuk menggunakan fitur notifikasi email, tambahkan baris di bawah

action = %(action_mw)s

Parameter %(action_mw)s melarang alamat IP yang mencurigakan dan mengirim email ke admin dengan laporan whois terperinci. Untuk menyertakan pesan log, setel parameter ke %(action_mwl)s .

Tambahan menentukan alamat email pengirim serta penerima.

Fail2ban jail

Modus operandi fail2ban menggunakan konsep penjara. Artinya, jika alamat IP yang melanggar tidak berhasil mencoba masuk atau mengakses layanan, alamat tersebut ditempatkan di 'jail' dan tidak dapat memulai koneksi hingga bantime berlalu.

Penjara, secara sederhana, adalah layanan dengan filter dan tindakan. Fail2ban melihat entri log dan setelah entri log yang cocok diidentifikasi dan kondisi terpenuhi, tindakan akan diterapkan.

Penjara SSH biasanya diaktifkan secara default untuk mengikat koneksi SSH jahat dari alamat IP yang mencurigakan. Untuk mengaktifkan jail untuk layanan lain, cukup tambahkan enabled =true atribut setelah tajuk penjara. Anda juga dapat memberikan pengaturan larangan seperti yang kita lihat sebelumnya.

Fail2ban klien

Fail2ban menyediakan alat baris perintah untuk berinteraksi dengan Fail2ban yang dikenal sebagai fail2ban-client . Anda dapat melakukan segudang tugas termasuk melarang dan membatalkan pemblokiran alamat IP.

Untuk memeriksa status Fail2ban dan melihat apakah ada IP yang diblokir atau filter yang dilanggar, jalankan perintah:

$ sudo fail2ban-client status sshd

Output di bawah ini mengonfirmasi keberadaan alamat IP yang dilarang atau masuk daftar hitam setelah upaya login SSH yang gagal. Alamat IP saat ini berada di penjara SSH.

Anda juga dapat memfilter file fail2ban.log untuk mencantumkan semua alamat IP yang dilarang:

$ sudo zgrep 'Ban' /var/log/fail2ban.log*

Keluaran:

2021-04-29 11:17:55,081 fail2ban.actions        [1310843]: NOTICE  [sshd] Ban 117.221.69.37
2021-04-29 11:17:55,123 fail2ban.actions        [1310843]: NOTICE  [sshd] Ban 49.233.251.133
2021-04-29 11:17:55,131 fail2ban.actions        [1310843]: NOTICE  [sshd] Ban 106.52.93.202
2021-04-29 11:17:55,139 fail2ban.actions        [1310843]: NOTICE  [sshd] Ban 222.187.232.205
2021-04-29 11:17:55,147 fail2ban.actions        [1310843]: NOTICE  [sshd] Ban 222.187.239.107

Untuk membatalkan pemblokiran alamat IP yang masuk daftar hitam, jalankan perintah:

$ sudo fail2ban-client set sshd unbanip 192.168.2.102

Sekarang verifikasi status Fail2ban lagi, dan kali ini, IP yang diblokir tidak lagi terdaftar.

Untuk memblokir alamat IP, ketik:

$ sudo fail2ban-client set sshd banip 192.168.2.102

Untuk opsi baris perintah lainnya, jalankan perintah:

$ fail2ban-client -h

Kesimpulan

Ingatlah bahwa Fail2ban bukan pengganti firewall dan tindakan keamanan lain yang digunakan untuk melindungi sistem Anda. Ini hanyalah lapisan keamanan tambahan yang memberi server Anda lapisan perlindungan ekstra terhadap serangan brute force terutama dari bot dan skrip otomatis. Ini mengakhiri tutorial tentang cara menginstal dan mengkonfigurasi Fail2ban di Ubuntu 20.04.


Ubuntu
  1. Instal dan Konfigurasi PHP OPcache di Ubuntu 20.04

  2. Cara menginstal dan mengkonfigurasi Fail2Ban di Ubuntu 20.04

  3. Cara Menginstal dan Mengonfigurasi Fail2ban di Ubuntu 20.04 LTS

  1. Cara Menginstal dan Mengonfigurasi Redis di Ubuntu 18.04

  2. Cara Menginstal dan Mengonfigurasi Fail2ban di Ubuntu 20.04

  3. Bagaimana Cara Menginstal dan Mengonfigurasi Fail2ban di Ubuntu?

  1. Cara Menginstal dan Mengkonfigurasi Redmine di Ubuntu 18.04

  2. Cara Menginstal dan Mengonfigurasi Samba di Ubuntu 18.04

  3. Cara Menginstal dan Mengonfigurasi Redis di Ubuntu 20.04