06 octombrie 2026 · by Alex M.
Dacă ai un VPS SSD sau un VPS NVMe expus pe internet, una dintre primele amenințări cu care te vei confrunta sunt atacurile de tip brute-force: roboți care încearcă mii de combinații user/parolă pe SSH, panouri de administrare sau formulare web. Fail2Ban este soluția clasică, lightweight și extrem de eficientă care monitorizează fișierele de log și blochează automat IP-urile suspecte la nivel de firewall.
În acest ghid vei afla exact cum să instalezi, configurezi și personalizezi Fail2Ban pe Ubuntu 22.04 / Debian 12, cu exemple practice pentru SSH, Nginx și alte servicii.
Fail2Ban este un daemon scris în Python care scanează fișierele de log ale serviciilor (SSH, Apache, Nginx, FTP, email etc.) și detectează tipare de autentificare eșuată. Când numărul de erori depășește un prag configurabil într-un interval de timp definit, Fail2Ban adaugă automat o regulă în iptables (sau nftables/ufw) care blochează IP-ul atacatorului pentru o perioadă setată.
Avantaje cheie:
Înainte să începi, asigură-te că ai:
sudoiptables sau ufw instalatDacă nu ai deja un server configurat, verifică ofertele de VPS NVMe de la CLIQHOST — ideal pentru proiecte care necesită securitate și viteză.
Întotdeauna începe cu un update al pachetelor:
sudo apt update && sudo apt upgrade -y
Installează Fail2Ban:
sudo apt install fail2ban -y
Verifică că serviciul rulează:
sudo systemctl status fail2ban
Dacă serviciul nu pornește automat:
sudo systemctl enable --now fail2ban
Fail2Ban are o arhitectură de configurare flexibilă:
/etc/fail2ban/fail2ban.conf — configurare globală a daemon-ului/etc/fail2ban/jail.conf — regulile implicite pentru toate „jail"-urile/etc/fail2ban/jail.local — fișierul TĂU de suprascrie; NICIODATĂ nu modifica direct jail.conf!/etc/fail2ban/filter.d/ — filtre predefinite (regex pentru log-uri)/etc/fail2ban/action.d/ — acțiuni predefinite (iptables, email etc.)Regula de aur: fă toate modificările în fișiere .local — la update-urile pachetului, fișierele .conf pot fi suprascrise.
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
Deschide fișierul:
sudo nano /etc/fail2ban/jail.local
Localizează secțiunea [DEFAULT] și ajustează valorile:
[DEFAULT]
# IP-uri sau rețele care nu vor fi niciodată blocate
ignoreip = 127.0.0.1/8 ::1 YOUR_HOME_IP
# Durata ban-ului (secunde). 3600 = 1 oră
bantime = 3600
# Fereastra de timp în care se numără tentativele (secunde)
findtime = 600
# Numărul maxim de tentative eșuate înainte de ban
maxretry = 5
# Backend pentru citirea log-urilor
backend = auto
# Acțiunea implicită: ban cu iptables
banaction = iptables-multiport
Important: Adaugă IP-ul tău de acasă sau de birou în
ignoreippentru a nu te bloca accidental!
SSH este prima țintă a oricărui bot. Activează protecția:
[sshd]
enabled = true
port = ssh
logpath = %(sshd_log)s
backend = %(sshd_backend)s
maxretry = 3
bantime = 86400
Aici am setat bantime = 86400 (24 de ore) și maxretry = 3 — mai strict decât valorile globale. Adaptează în funcție de nevoile tale.
Dacă ai schimbat portul SSH (recomandare de securitate):
[sshd]
enabled = true
port = 2222
logpath = %(sshd_log)s
maxretry = 3
bantime = 86400
Aplicată configurarea:
sudo systemctl reload fail2ban
Dacă rulezi Nginx pe VPS-ul tău, poți proteja atât autentificările HTTP cât și cererile rău-intenționate.
[nginx-http-auth]
enabled = true
port = http,https
logpath = /var/log/nginx/error.log
maxretry = 5
bantime = 3600
Creează un filtru personalizat:
sudo nano /etc/fail2ban/filter.d/nginx-badbots.conf
[Definition]
failregex = ^<HOST> -.*"(GET|POST|HEAD).*HTTP.*" (400|444|403|408) .*$
ignoreregex =
Adaugă jail-ul în jail.local:
[nginx-badbots]
enabled = true
port = http,https
filter = nginx-badbots
logpath = /var/log/nginx/access.log
maxretry = 10
bantime = 7200
findtime = 300
Servere de email sunt frecvent atacate. Activează jail-urile pentru Postfix și Dovecot:
[postfix]
enabled = true
port = smtp,465,submission
logpath = %(postfix_log)s
maxretry = 5
[dovecot]
enabled = true
port = pop3,pop3s,imap,imaps,submission,465,sieve
logpath = %(dovecot_log)s
maxretry = 5
bantime = 3600
Pentru configurări avansate de email sau dacă preferi o soluție gestionată, explorează serviciile de administrare servere CLIQHOST.
Odată configurat, vei folosi des aceste comenzi:
sudo fail2ban-client status
sudo fail2ban-client status sshd
Output tipic:
Status for the jail: sshd
|- Filter
| |- Currently failed: 2
| |- Total failed: 47
| `- Journal matches: ...
`- Actions
|- Currently banned: 1
|- Total banned: 8
`- Banned IP list: 198.51.100.42
sudo fail2ban-client set sshd unbanip 198.51.100.42
sudo fail2ban-client set sshd banip 203.0.113.15
sudo fail2ban-regex /var/log/auth.log /etc/fail2ban/filter.d/sshd.conf
Fail2Ban poate trimite email la fiecare ban — util pentru monitorizare:
[DEFAULT]
destemail = [email protected]
sender = [email protected]
mta = sendmail
action = %(action_mwl)s
action_mwl = ban + email cu log-urile relevante (whois + log).
Asigură-te că sendmail sau un alt MTA este instalat pe server. Alternativ, poți folosi un SMTP extern.
Dacă folosești UFW ca firewall (comun pe Ubuntu), configurează Fail2Ban să-l folosească:
[DEFAULT]
banaction = ufw
Asigură-te că UFW este activ:
sudo ufw enable
sudo ufw status
Fail2Ban va folosi comanda ufw pentru a adăuga și elimina regulile de ban.
O funcție avansată — IP-urile care sunt banate de mai multe ori primesc ban-uri din ce în ce mai lungi:
[recidive]
enabled = true
logpath = /var/log/fail2ban.log
maxretry = 3
findtime = 86400
bantime = 604800
Acest jail monitorizează log-ul Fail2Ban însuși: dacă un IP este banat de 3 ori în 24 de ore, primește un ban de 7 zile.
Monitorizează activitatea în timp real:
sudo tail -f /var/log/fail2ban.log
Output tipic:
2025-07-01 03:14:22,105 fail2ban.actions [1234]: NOTICE [sshd] Ban 198.51.100.42
2025-07-01 03:16:01,002 fail2ban.actions [1234]: NOTICE [sshd] Ban 203.0.113.7
Fail2Ban este o piesă importantă, dar nu singura. Combină-l cu:
Pentru proiecte enterprise sau dacă vrei să delegi administrarea serverului, serverele dedicate managed CLIQHOST includ monitorizare și securizare proactivă.
sudo journalctl -xe -u fail2ban
Verifică erorile de sintaxă în jail.local.
Testează manual:
sudo fail2ban-regex /var/log/auth.log /etc/fail2ban/filter.d/sshd.conf --print-all-matched
Accesează serverul din consola VNC/KVM (disponibilă în panoul de control CLIQHOST) și rulează:
sudo fail2ban-client set sshd unbanip IP_TAU
Fail2Ban este un instrument esențial pentru orice administrator de server Linux. Cu câteva zeci de minute de configurare, reduci dramatic suprafața de atac a VPS-ului tău — fără costuri suplimentare și fără consum semnificativ de resurse.
Resumând pașii cheie:
aptjail.local (nu în .conf!)Dacă ești în căutarea unui VPS Linux performant și sigur pe care să aplici acest ghid, explorează opțiunile de VPS SSD sau VPS NVMe de la CLIQHOST — infrastructură în Moldova, suport tehnic real și prețuri transparente. Pentru întrebări sau configurări complexe, echipa noastră este disponibilă.
Real reviews from customers who trust CLIQHOST for performance, reliability and expert technical support.
"We moved our online shop from a foreign host and the difference is night and day — pages load instantly and support replies in minutes, in Romanian."
"Migrated 12 client sites to CLIQHOST. Free migration, zero downtime, and the cPanel setup is exactly what my team needed. Highly recommend."
"Our NVMe VPS handles traffic spikes without a sweat. Full root, local datacenter, and billing in MDL — everything we wanted from a provider."