Anda dapat menggunakan ufw dan fail2b bersama-sama, tetapi seperti yang ditunjukkan sebelumnya, urutan aturan (ufw) adalah yang penting.
Di luar kotak, fail2ban menggunakan iptables dan menyisipkan aturan pertama dalam rantai INPUT. Ini tidak akan melukai atau bertentangan dengan ufw.
Jika Anda ingin mengintegrasikan fail2ban sepenuhnya untuk menggunakan ufw (bukan iptables). Anda perlu mengedit sejumlah file termasuk
/etc/fail2ban/jail.local
jail.local adalah tempat Anda mendefinisikan layanan Anda, termasuk port apa yang mereka dengarkan (pikirkan mengubah ssh ke port non-default) dan tindakan apa yang harus diambil.
** Harap diperhatikan *: Jangan pernah mengedit jail.conf , perubahan Anda harus dilakukan jail.local
! File itu dimulai dengan ini:
# Changes: in most of the cases you should not modify this
# file, but provide customizations in jail.local file,
# or separate .conf files under jail.d/ directory
Menggunakan ssh sebagai contoh, perhatikan definisi port non-default juga =)
[ssh]
enabled = true
banaction = ufw-ssh
port = 2992
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
Anda kemudian mengkonfigurasi fail2ban untuk menggunakan ufw in (satu file .conf untuk setiap layanan)
/etc/fail2ban/action.d/ufw-ssh.conf
Sintaksnya adalah
[Definition]
actionstart =
actionstop =
actioncheck =
actionban = ufw insert 1 deny from <ip> to any app OpenSSH
actionunban = ufw delete deny from <ip> to any app OpenSSH
Catatan: Anda mengonfigurasi fail2ban untuk menggunakan ufw dan memasukkan aturan baru PERTAMA menggunakan sintaks "insert 1". Penghapusan akan menemukan aturan terlepas dari pesanan.
Ada posting blog yang bagus yang lebih detail di sini
http://blog.vigilcode.com/2011/05/ufw-with-fail2ban-quick-secure-setup-part-ii/
[EDIT] Untuk ubuntu 16.04+
secara default " defaults-debian.conf
" /etc/fail2ban/jail.d
dengan isi
[sshd]
enabled = true
akan mengaktifkan perlindungan ssh dari fail2ban.
Anda harus salah menaruhnya.
Kemudian buat penjara. Lokal seperti yang akan Anda lakukan secara umum, milik saya akan seperti ini:
[ssh-with-ufw]
enabled = true
port = 22
filter = sshd
action = ufw[application="OpenSSH", blocktype=reject]
logpath = /var/log/auth.log
maxretry = 3
Sudah ada ufw.conf di instalasi default fail2ban jadi tidak perlu membuatnya.
Satu-satunya perubahan khusus untuk Anda jail.local akan berada di baris tindakan di mana Anda perlu menempatkan aplikasi yang bersangkutan untuk perlindungan dan apa yang ingin Anda dapatkan sebagai hasilnya.
ufw cenderung mendeteksi secara otomatis sejumlah aplikasi yang berjalan menggunakan jaringan. Untuk memiliki daftar ketik saja sudo ufw app list
. Ini peka huruf besar-kecil.
muat ulang fail2ban dan Anda tidak akan lagi melihat rantai fail2ban dan jika ada IP yang mendapatkan blok Anda akan melihatnya sudo ufw status