Cum securizați un server Linux folosind fail2ban. fail2ban este o soluție eficientă și ușor de implementat pentru a crește securitatea serverelor Linux.
Prin monitorizarea logurilor și blocarea automată a IP-urilor suspecte, fail2ban ajută la prevenirea accesului neautorizat și la menținerea unui mediu sigur.
Este recomandat să fie parte din orice strategie de securitate Linux.
Cum securizați un server Linux?
Securitatea serverelor Linux este esențială pentru prevenirea accesului neautorizat și a atacurilor cibernetice.
Un instrument eficient pentru protecția împotriva atacurilor de tip brute-force este fail2ban.
Acesta monitorizează logurile și blochează adresele IP suspecte prin intermediul firewall-ului.
Ce este fail2ban?
fail2ban este o aplicație care scanează fișierele de log pentru a detecta modele de autentificare eșuată repetată.
Când un IP atinge un număr prestabilit de încercări nereușite, acesta este blocat temporar sau permanent folosind iptables sau alte mecanisme de firewall.
Instalarea fail2ban
Pe Ubuntu sau Debian, instalați fail2ban cu:
sudo apt update sudo apt install fail2ban -y
Verificarea stării serviciului
sudo systemctl status fail2ban
Pentru a porni și activa serviciul la boot:
sudo systemctl enable fail2ban sudo systemctl start fail2ban
Configurarea fail2ban
Nu modificați fișierul /etc/fail2ban/jail.conf direct. În schimb, creați o copie locală:
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
Editați fișierul jail.local:
sudo nano /etc/fail2ban/jail.local
Exemplu de configurație de bază:
[DEFAULT] bantime = 3600 findtime = 600 maxretry = 5 backend = systemd ignoreip = 127.0.0.1/8 ::1 [sshd] enabled = true
Explicație:
- bantime: timpul în secunde cât un IP rămâne blocat
- findtime: perioada în care se verifică numărul de încercări
- maxretry: numărul maxim de încercări înainte de a bloca IP-ul
- ignoreip: IP-uri ce nu trebuie blocate (ex. localhost)
- [sshd]: activează protecția pentru serviciul SSH
Reîncărcarea configurației
După modificări, reporniți serviciul:
sudo systemctl restart fail2ban
Monitorizarea jail-urilor active
Pentru a vedea jails active:
sudo fail2ban-client status
Pentru a verifica detaliile unui jail specific (ex: sshd):
sudo fail2ban-client status sshd
Deblocarea unui IP
Dacă doriți să scoateți un IP din lista de ban, folosiți:
sudo fail2ban-client set sshd unbanip 192.168.1.100
Adăugarea protecției pentru alte servicii
fail2ban poate fi configurat și pentru alte servicii cum ar fi:
- Apache / Nginx (atacuri tip HTTP bruteforce)
- Postfix / Dovecot (atacuri pe email)
- vsftpd / proftpd (FTP)
Este necesară activarea jail-urilor corespunzătoare și definirea regulilor în fișierele respective.
Loguri fail2ban
Logurile sunt utile pentru analiză și audit:
/var/log/fail2ban.log

