Cum să instalați și să configurați Fail2Ban pe Linux
9 min citire - 14 mai 2026

Ghid pas cu pas pentru instalarea, configurarea și testarea Fail2Ban pe servere Linux bazate pe Ubuntu, Debian și RHEL.
Cum se instalează și se configurează Fail2Ban pe Linux
Fail2Ban monitorizează jurnalele serverului dvs. pentru a detecta activități suspecte și blochează automat adresele IP care încalcă regulile, actualizând regulile firewall-ului. Oprește atacurile de tip brute-force, reduce zgomotul din jurnale și rulează silențios în fundal odată configurat. Acest ghid acoperă instalarea pe Ubuntu/Debian, configurația de bază, configurarea jail-ului și câteva opțiuni avansate care merită cunoscute.
Cerințe preliminare
Fail2Ban rulează pe majoritatea distribuțiilor Linux: Ubuntu, Debian, AlmaLinux, CentOS, RHEL, Rocky Linux și Fedora. Veți avea nevoie de:
- Python 3 instalat pe sistem
- Acces root sau sudo pentru instalarea pachetelor și modificarea firewall-ului
- Un firewall activ (iptables, nftables, ufw sau firewalld)
- Fișiere jurnal care înregistrează încercările eșuate de autentificare (
/var/log/auth.logpe sistemele bazate pe Debian,/var/log/securepe sistemele bazate pe RHEL)
Pe sistemele bazate pe RHEL, activați mai întâi depozitul EPEL. Înainte de a instala Fail2Ban, asigurați-vă că firewall-ul funcționează cu ufw status sau systemctl status firewalld.
Instalarea Fail2Ban pe Ubuntu/Debian
Actualizați pachetele și instalați Fail2Ban:
sudo apt update && sudo apt upgrade -y
sudo apt install fail2banActivați serviciul astfel încât să pornească la pornire, apoi porniți-l:
sudo systemctl enable fail2ban
sudo systemctl start fail2banCopiați configurația implicită într-un fișier local de suprascriere. Editați întotdeauna jail.local, nu jail.conf, astfel încât actualizările pachetelor să nu vă suprascrie setările:
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.localVerificați dacă totul funcționează:
sudo systemctl status fail2ban
sudo fail2ban-client statusPrima comandă ar trebui să afișeze „Active: active (running)”. A doua comandă listează jails-urile active. Confirmați că Fail2Ban este activat la pornire cu sudo systemctl is-enabled fail2ban.
Configurarea Jails
Setări implicite
Deschideți /etc/fail2ban/jail.local și ajustați [DEFAULT] . Aceste setări se aplică tuturor jails-urilor, cu excepția cazului în care sunt suprascrise:
| Parametru | Valoare recomandată | Ce face |
|---|---|---|
bantime | 3600 | Blochează o adresă IP timp de 1 oră |
findtime | 600 | Numără eșecurile într-un interval de 10 minute |
maxretry | 3 până la 5 | Eșecuri înainte de declanșarea blocării |
ignoreip | 127.0.0.1/8 ::1 | Adresele IP care nu sunt niciodată blocate |
Adăugați-vă propriul IP de administrare la ignoreip pentru a nu vă bloca accesul. Exemplu: ignoreip = 127.0.0.1/8 ::1 203.0.113.50.
Protecție SSH
Activați carceră SSH în jail.local:
[sshd]
enabled = trueVerificați dacă logpath indică fișierul de jurnal corect pentru distribuția dvs. Dacă ați mutat SSH pe un port non-standard (de ex., 2222), actualizați port parametrul corespunzător.
Protecția serverului web
Activați jail-ul care corespunde serverului dvs. web:
- Nginx:
[nginx-http-auth]pentru eșecuri de autentificare,[nginx-botsearch]pentru roboți rău intenționați - Apache:
[apache-auth]pentru autentificare,[apache-badbots]pentru roboți
Recidive Jail
Recidive [recidive] jail-ul capturează IP-urile care continuă să fie blocate în alte jail-uri și aplică o penalizare mai lungă, de obicei o săptămână (604.800 de secunde). Este util pentru atacatorii persistenți care își schimbă abordarea.
După efectuarea modificărilor, reîncarcă:
sudo systemctl restart fail2ban
sudo fail2ban-client statusTestare și monitorizare
Testarea interdicțiilor
Înainte de a vă baza pe Fail2Ban în producție, testați-l. De pe o mașină la distanță (nu IP-ul dvs. de administrator), încercați să vă autentificați prin SSH până când depășiți maxretry. Ar trebui să fiți blocat. Confirmați cu:
sudo fail2ban-client status sshdUrmăriți interdicțiile în timp real:
tail -f /var/log/fail2ban.logDacă blocați accidental o adresă IP legitimă, deblocați-o:
sudo fail2ban-client set sshd unbanip 203.0.113.50Monitorizarea zilnică
Revizuiți istoricul blocărilor căutând în jurnal:
grep "Ban\|Unban" /var/log/fail2ban.logComenzi utile de administrare:
| Comandă | Scop |
|---|---|
fail2ban-client status | Afișează toate blocările active |
fail2ban-client banned | Afișează toate adresele IP interzise în prezent |
fail2ban-client set <jail> unbanip <IP> | Deblochează o anumită adresă IP |
fail2ban-client unban --all | Șterge toate interdicțiile |
fail2ban-client set <jail> banip <IP> | Blochează manual o adresă IP |
Blocările persistă după reporniri. Fail2Ban le stochează într-o bază de date SQLite la /var/lib/fail2ban/fail2ban.sqlite3.
Configurare avansată
Trecerea la nftables
nftables este înlocuitorul modern al iptables. Acesta gestionează IPv4 și IPv6 într-un singur cadru, se scalează mai bine cu liste de interdicții mari și are limitarea ratei încorporată. Dacă utilizați Ubuntu 22.04+, Debian 11+ sau orice distribuție recentă, aceasta este cea mai bună alegere.
Configurați-l jail.local:
[DEFAULT]
banaction = nftables-multiportReporniți Fail2Ban, apoi verificați cu sudo nft list ruleset. Ar trebui să vedeți f2b-table și f2b-chain în rezultat. Rămâneți la iptables doar dacă utilizați un sistem mai vechi sau aveți cerințe de compatibilitate.
Notificări prin e-mail
În mod implicit, Fail2Ban blochează în mod silențios. Pentru a primi alerte prin e-mail, adăugați următoarele în [DEFAULT] secțiunea jail.local:
[DEFAULT]
destemail = [email protected]
sender = [email protected]
mta = sendmail
action = %(action_mwl)sAcțiunea action_mwl acțiunea trimite un e-mail cu detalii despre blocare, date WHOIS și liniile de jurnal care au declanșat blocarea. Utilizați action_mw dacă doriți doar datele WHOIS. Veți avea nevoie de un agent de transfer de e-mail precum sendmail instalat sau de un relay SMTP configurat prin ceva de genul msmtp.
Pentru alerte Slack sau Discord, creați un script care trimite un webhook și conectați-l printr-un fișier de acțiune personalizat în /etc/fail2ban/action.d/.
Dacă sunteți în căutarea unui server cu acces root complet și lățime de bandă nelimitată pentru a rula Fail2Ban, consultați serverele dedicate ale FDC.

V-ați săturat de implementări lente sau limite de lățime de bandă? FDC Servers oferă putere dedicată instantanee, acoperire globală și planuri flexibile construite pentru orice scară. Sunteți gata să faceți upgrade?
Eliberați performanța acumDe ce este important să aveți un VPS puternic și nemeditat
Un VPS neevaluat oferă o lățime de bandă forfetară la o viteză fixă a portului. Cum diferă de planurile cu contorizare, când merită și ce trebuie să verificați înainte de cumpărare.
7 min citire - 9 mai 2025
Managementul memoriei în Linux: Swap, OOM Killer și Cgroups
12 min citire - 31 mai 2026

Aveți întrebări sau aveți nevoie de o soluție personalizată?
Opțiuni flexibile
Acoperire globală
Implementare instantanee
Opțiuni flexibile
Acoperire globală
Implementare instantanee