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 să instalați și să configurați Fail2Ban pe Linux
Fail2Ban monitorizează jurnalele serverului pentru activități suspecte și interzice automat IP-urile ofensatoare prin actualizarea regulilor firewall-ului. Acesta oprește atacurile brute-force, reduce zgomotul din jurnale și rulează liniștit în fundal după ce este configurat. Acest ghid acoperă instalarea pe Ubuntu/Debian, configurarea de bază, configurarea închisorii și câteva opțiuni avansate despre care merită să știți.
Condiții prealabile
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 de jurnal care înregistrează încercările de autentificare eșuate
(/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, confirmați că firewall-ul dvs. funcționează cu ufw status sau systemctl status firewalld.
Instalarea Fail2Ban pe Ubuntu/Debian
Actualizați-vă 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 înlocuire. 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ă enumeră închisorile active. Confirmați că Fail2Ban este activat la pornire cu sudo systemctl is-enabled fail2ban.
Configurarea închisorilor
Setări implicite
Deschideți /etc/fail2ban/jail.local și ajustați secțiunea [DEFAULT]. Aceste setări se aplică tuturor închisorilor, cu excepția cazului în care sunt suprapuse:
| Parametru | Valoare recomandată | Ce face |
|---|---|---|
bantime | 3600 | Blochează un IP timp de 1 oră |
findtime | 600 | Numără eșecurile într-o fereastră de 10 minute |
maxretry | 3 până la 5 | Eșecuri înainte de declanșarea unei interdicții |
ignoreip | 127.0.0.1/8 ::1 | IP-uri care nu sunt niciodată interzise |
Adăugați propriul IP de administrare la ignoreip, astfel încât să nu vă blocați. Exemplu: ignoreip = 127.0.0.1/8 ::1 203.0.113.50.
Protecție SSH
Activați SSH jail în jail.local:
[sshd]
enabled = trueVerificați dacă logpath indică fișierul de log corect pentru distribuția dvs. Dacă ați mutat SSH la un port non-standard (de exemplu, 2222), actualizați parametrul port pentru a se potrivi.
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 bots
Închisoarea Recidive
Închisoarea [recidive] prinde IP-urile care continuă să fie interzise prin alte închisori și aplică o sancțiune mai lungă, de obicei o săptămână (604 800 secunde). Este utilă pentru atacatorii persistenți care își rotesc abordarea.
După efectuarea modificărilor, reîncărcați:
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 la o mașină de la distanță (nu IP-ul dvs. de administrare), încercați să vă conectaț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 cum se produc interdicțiile în timp real:
tail -f /var/log/fail2ban.logDacă blocați accidental un IP legitim, deblocați-l:
sudo fail2ban-client set sshd unbanip 203.0.113.50Monitorizare zilnică
Analizați istoricul interdicțiilor prin căutarea în jurnal:
grep "Ban\|Unban" /var/log/fail2ban.logComenzi de gestionare utile:
| Comandă | Scop |
|---|---|
fail2ban-client status | Listează toate închisorile active |
fail2ban-client interzis | Afișează toate IP-urile banate în prezent |
fail2ban-client set <jail> unbanip <IP> | Deblochează un IP specific |
fail2ban-client unban --all | Șterge toate interdicțiile |
fail2ban-client set <jail> banip <IP> | Interzice manual un IP |
Interdicțiile persistă în timpul repornirii. Fail2Ban le stochează într-o bază de date SQLite la adresa /var/lib/fail2ban/fail2ban.sqlite3.
Configurare avansată
Trecerea la nftables
nftables este înlocuitorul modern pentru iptables. Acesta gestionează IPv4 și IPv6 într-un singur cadru, se scalează mai bine cu liste mari de interdicții și are limitarea ratei încorporată. Dacă sunteți pe Ubuntu 22.04+, Debian 11+ sau orice altă distribuție recentă, aceasta este cea mai bună alegere.
Setați-l în 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 ieșire. Rămâneți la iptables doar dacă sunteți pe un sistem mai vechi sau aveți cerințe de compatibilitate.
Notificări prin e-mail
În mod implicit, Fail2Ban interzice în mod silențios. Pentru a primi alerte prin e-mail, adăugați următoarele la secțiunea [DEFAULT] din jail.local:
[DEFAULT]
destemail = [email protected]
sender = [email protected]
mta = sendmail
action = %(action_mwl)sAcțiunea action_mwl trimite un e-mail cu detaliile interdicției, datele WHOIS și liniile de jurnal care au declanșat interdicția. 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 releu SMTP configurat prin ceva precum msmtp.
Pentru alertele 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 complet la rădăcină și lățime de bandă nemăsurată pentru a rula Fail2Ban, consultați serverele dedicate 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 acum
Lista de verificare pentru întărirea serverului Linux
Lista de verificare pas cu pas pentru întărirea unui server Linux. Acoperă SSH, firewall-uri, patch-uri, permisiuni pentru fișiere, SELinux/AppArmor și logare de audit
15 min citire - 8 mai 2026
tutorial iperf3: Testarea vitezei rețelei pe Linux și Windows
10 min citire - 7 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