Κεφάλαιο 3 · 3.5
fail2ban κατά των προσπαθειών μαντέματος κωδικών
Το fail2ban διαβάζει το αρχείο καταγραφής σας και μπλοκάρει για λίγο τις διευθύνσεις IP που συνδέονται επανειλημμένα με λάθος στοιχεία. Αν χρησιμοποιείτε μόνο κλειδιά (δείτε Απενεργοποίηση σύνδεσης με κωδικό πρόσβασης και ως root), οι προσπάθειες μαντέματος δεν μπορούν πλέον να πετύχουν. Τότε το fail2ban κυρίως κρατά ήσυχο το αρχείο καταγραφής σας και επιβραδύνει τους επιτιθέμενους.
Εγκατάσταση
anna@web1:~$ sudo apt install fail2ban
Σε Debian 13 και Ubuntu, η παρακολούθηση του SSH (το jail sshd) λειτουργεί αμέσως μετά. Σε Debian 12 χρειάζεται μία επιπλέον γραμμή, δείτε παρακάτω.
Σε AlmaLinux και Rocky Linux: sudo dnf install epel-release, sudo dnf install fail2ban και sudo systemctl enable --now fail2ban.
Οι δικές σας ρυθμίσεις
Μην τροποποιείτε το jail.conf: μια ενημέρωση το αντικαθιστά. Γράψτε τις δικές σας ρυθμίσεις στο /etc/fail2ban/jail.local:
[DEFAULT]
bantime = 1h
findtime = 10m
maxretry = 5
bantime.increment = true
ignoreip = 127.0.0.1/8 ::1 198.51.100.7
[sshd]
enabled = true
maxretryαποτυχημένες προσπάθειες μέσα σεfindtimeοδηγούν σε αποκλεισμό διάρκειαςbantime.bantime.increment: όποιος επιστρέφει, αποκλείεται κάθε φορά για περισσότερο χρόνο.ignoreip: διευθύνσεις που δεν αποκλείονται ποτέ, όπως η σταθερή διεύθυνση IP του γραφείου σας. Αντικαταστήστε το 198.51.100.7 με τη δική σας διεύθυνση ή παραλείψτε το.- Σε Debian 12 προσθέστε επίσης κάτω από το
[sshd]τη γραμμήbackend = systemdκαι εγκαταστήστε το πακέτοpython3-systemd. Έτσι το fail2ban διαβάζει το journal αντί για τοauth.log, που λείπει. Το Debian 13 το κάνει ήδη αυτόματα.
anna@web1:~$ sudo systemctl restart fail2ban
anna@web1:~$ sudo fail2ban-client status sshd
Status for the jail: sshd
|- Filter
| |- Currently failed: 2
| |- Total failed: 41
| `- Journal matches: _SYSTEMD_UNIT=ssh.service + _COMM=sshd
`- Actions
|- Currently banned: 3
|- Total banned: 7
`- Banned IP list: 192.0.2.44 198.51.100.23 203.0.113.99
Άρση του δικού σας αποκλεισμού
Έχετε αποκλειστεί εσείς οι ίδιοι, για παράδειγμα μετά από μερικές προσπάθειες με λάθος κλειδί; Περιμένετε να λήξει ο αποκλεισμός ή συνδεθείτε μέσω της κονσόλας ή από άλλη διεύθυνση και πληκτρολογήστε:
anna@web1:~$ sudo fail2ban-client set sshd unbanip 198.51.100.7