EQVPS

Πώς να ρυθμίσετε το fail2ban για να μπλοκάρετε επιθέσεις brute-force

Σταματήστε το συνεχές μάντεμα κωδικών στον server σας: το fail2ban παρακολουθεί τα logs σας και μπλοκάρει αυτόματα IP που αποτυγχάνουν να συνδεθούν πολλές φορές. Εγκαταστήστε το, ενεργοποιήστε το SSH jail και ρυθμίστε τους κανόνες μπλοκαρίσματος — σε λίγες εντολές.

Ακόμα κι όταν όλα τα υπόλοιπα είναι κλειδωμένα, τα bots δεν σταματούν ποτέ να δοκιμάζουν κωδικούς στη θύρα 22 — είναι συνεχής θόρυβος και φορτίο στο παρασκήνιο. Το fail2ban παρακολουθεί τα logs σας και μπλοκάρει αυτόματα κάθε IP που αποτυγχάνει να συνδεθεί πολλές φορές, ώστε οι επιτιθέμενοι να αποκλείονται μετά από λίγες προσπάθειες αντί να μαντεύουν επ' άπειρον. Είναι μια μικρή εγκατάσταση με μεγάλη μείωση στον θόρυβο των logs.

1. Εγκαταστήστε το fail2ban

sudo apt update && sudo apt install -y fail2ban

2. Δημιουργήστε ένα τοπικό config

Μην επεξεργάζεστε ποτέ απευθείας το προεγκατεστημένο jail.conf — υπερκαλύψτε το στο jail.local:

sudo tee /etc/fail2ban/jail.local > /dev/null <<'EOF'
[DEFAULT]
# don't ban yourself — add your home/office IP
ignoreip = 127.0.0.1/8 ::1
bantime  = 1h
findtime = 10m
maxretry = 5

[sshd]
enabled = true
EOF

Αυτό μπλοκάρει μια IP για μία ώρα μετά από 5 αποτυχημένες συνδέσεις μέσα σε 10 λεπτά. Προσθέστε τη δική σας IP στο ignoreip ώστε ένας λανθασμένος κωδικός να μη σας κλειδώσει ποτέ έξω.

3. Ξεκινήστε το και ενεργοποιήστε το στην εκκίνηση

sudo systemctl enable --now fail2ban

4. Ελέγξτε το SSH jail

sudo fail2ban-client status sshd

Θα δείτε πόσες IP είναι αυτή τη στιγμή μπλοκαρισμένες — συχνά έναν εκπληκτικά μεγάλο αριθμό μέσα σε λίγα λεπτά.

Διαχείριση μπλοκαρισμάτων

sudo fail2ban-client set sshd unbanip 1.2.3.4   # lift a ban
sudo fail2ban-client status                     # list all jails
sudo systemctl reload fail2ban                  # apply config changes

Ειλικρινείς προειδοποιήσεις

Επόμενα βήματα

Το fail2ban είναι ένα επίπεδο ενός θωρακισμένου server. Συνδυάστε το με αυθεντικοποίηση με SSH key και ένα UFW firewall, και εκτελέστε την πλήρη λίστα ελέγχου ασφαλείας για νέο VPS πριν εκθέσετε οτιδήποτε στο internet.

Συχνές ερωτήσεις

Τι κάνει στην πράξη το fail2ban;

Παρακολουθεί αρχεία log (όπως το SSH auth log) για επαναλαμβανόμενες αποτυχίες από την ίδια IP, και όταν μια IP ξεπεράσει ένα όριο, προσθέτει ένα προσωρινό μπλοκάρισμα στο firewall. Τα bots που χτυπούν τη θύρα 22 όλη μέρα μπλοκάρονται μετά από λίγες προσπάθειες αντί να μαντεύουν επ' άπειρον. Είναι αυτόματη, συνεχής προστασία.

Χρειάζομαι ακόμα το fail2ban αν χρησιμοποιώ SSH keys;

Λύνουν διαφορετικά προβλήματα. Τα SSH keys κάνουν το μάντεμα ουσιαστικά αδύνατο· το fail2ban σταματάει τον θόρυβο και το φορτίο από ατελείωτες προσπάθειες, και προστατεύει και κάθε άλλη υπηρεσία που εκθέτετε (mail, web logins). Με SSH μόνο μέσω κλειδιού ο κίνδυνος είναι ήδη χαμηλός, αλλά το fail2ban είναι φθηνή άμυνα σε βάθος και μειώνει τον θόρυβο στα logs.

Μπορεί το fail2ban να με μπλοκάρει κατά λάθος;

Ναι, αν πληκτρολογήσετε λάθος τον δικό σας κωδικό αρκετές φορές — θα μπλοκαριστείτε για το bantime, και μετά θα ξεμπλοκαριστείτε αυτόματα. Για να μην κλειδωθείτε ποτέ έξω, προσθέστε τη δική σας IP στο 'ignoreip' μέσα στο config, και θυμηθείτε ότι μια κονσόλα παρόχου (η EQVPS διαθέτει) πάντα σας ξαναδίνει πρόσβαση.

Πώς βλέπω ποιος είναι μπλοκαρισμένος, ή πώς ξεμπλοκάρω μια IP;

Χρησιμοποιήστε 'sudo fail2ban-client status sshd' για να δείτε το jail και τις μπλοκαρισμένες IP. Για να άρετε ένα μπλοκάρισμα: 'sudo fail2ban-client set sshd unbanip 1.2.3.4'. Για να προσθέσετε μόνιμα μια έμπιστη IP, βάλτε τη στο ignoreip και κάντε reload.

Τι είναι τα bantime, findtime και maxretry;

Το maxretry είναι πόσες αποτυχίες επιτρέπονται, το findtime είναι το χρονικό παράθυρο μέσα στο οποίο μετριούνται, και το bantime είναι πόσο διαρκεί το μπλοκάρισμα. Για παράδειγμα, 5 αποτυχίες μέσα σε 10 λεπτά προκαλούν μπλοκάρισμα 1 ώρας. Αυξήστε το bantime (ή ορίστε μεγαλύτερη τιμή) για πιο επίμονους επιτιθέμενους.

Σχόλια

Δεν υπάρχουν ακόμη σχόλια. Γίνετε ο πρώτος.

Αφήστε ένα σχόλιο

Τα σχόλια ελέγχονται πριν εμφανιστούν.