Salin kode ini ke file baru /etc/fail2ban/filter.d/sshd-root.conf:
[INCLUDES]
# Read common prefixes. If any customizations available -- read them from
# common.local
before = common.conf
[Definition]
_daemon = sshd
failregex = ^%(__prefix_line)sFailed (?:password|publickey) for root from <HOST>(?: port \d*)?(?: ssh\d*)?$
ignoreregex =
HARAP Sadarilah bahwa Anda mungkin harus mengedit failregex untuk mengidentifikasi secara akurat upaya login root yang gagal - gunakan:
fail2ban-regex /var/log/auth.log /etc/fail2ban/filter.d/sshd-root.conf
untuk menguji apakah itu mengidentifikasi entri log yang benar.
Maka Anda perlu mengedit jail.local Anda untuk menggunakan filter baru - tambahkan sesuatu seperti:
[ssh]
enabled = true
port = 1:65535
filter = sshd-root
logpath = /var/log/auth.log
bantime = 604800
maxretry = 3
Jelas Anda harus menyesuaikan nilai-nilai ini sesuai dengan kebutuhan Anda. Pengaturan di atas akan menghapus semua paket yang masuk dari alamat IP yang menyinggung setelah tiga upaya untuk login sebagai root, dan akan melepaskan IP lagi setelah satu minggu.