Fail2ban

Cum să preveniți atacurile Brute-Force folosind Fail2ban

SSH și FTP sunt două dintre cele mai exploatate protocoale de rețea. Hackerii utilizează instrumente automate complexe pentru a ghici numele de utilizator și parola și apoi pătrund în sistemul dumneavoastră.

Cu ajutorul unor bune practici de securitate, puteți reduce majoritatea riscurilor de securitate. Iar cu Fail2ban, puteți reduce și mai mult riscul de încălcare a securității, fiind proactivi în securizarea serverelor sau a calculatoarelor.

Ce este Fail2ban?

Fail2ban este un puternic program de securitate open source care vă protejează dinamic serverele sau calculatoarele împotriva activităților suspecte și a atacurilor brute-force.

Acesta scanează în permanență fișierele de jurnal pentru a detecta încercările de conectare și, în cazul în care acestea au loc, blochează adresa IP sursă prin actualizarea regulilor de firewall.

Fail2ban funcționează cu majoritatea serviciilor de conexiune la distanță, cum ar SSH, FTP, SMTP și HTTP.

Este ușor de configurat și de personalizat. Puteți specifica pentru cât timp doriți să blocați adresele IP sau îl puteți configura pentru a primi alerte automate atunci când există o activitate suspectă.

Pentru a sublinia, Fail2ban nu este suficient pentru a vă proteja împotriva breșelor de securitate. Ar trebui să dispuneți și de alte măsuri de securitate pentru a reduce riscul de a fi piratat.

De exemplu, ar trebui să folosiți întotdeauna parole puternice pe sistemele dvs. și să restricționați accesul pe cât de mult puteți.

Cum se instalează Fail2ban

Majoritatea distribuțiilor Linux majore inclusiv Red Hat Enterprise Linux (RHEL), Ubuntu și Arch Linux, acceptă Fail2ban. Iată cum să instalați aplicația pe distribuția dvs. Linux:

sudo pacman -S fail2ban [Arch Linux]
sudo apt install fail2ban [Debian/Ubuntu]
sudo dnf install fail2ban [Fedora/RHEL]
sudo zypper install fail2ban [openSUSE]

În continuare, va trebui să activați serviciul. În acest fel, procesul va rula în fundal ori de câte ori sistemul dvs. va porni.

sudo systemctl enable fail2ban.service

Pentru a finaliza instalarea, porniți serviciul folosind următoarea comandă:

sudo systemctl start fail2ban

Puteți verifica dacă servciul este activ și funcționează cu comanda:

sudo systemctl status fail2ban
$ sudo systemctl status fail2ban
fail2ban.service - Fail2ban Service
   Loaded: loaded (/lib/systemd/system/fail2ban.service; enabled; vendor...
   Active: active (running) since Thu 2023-05-18 21:56:25 CESt; 7s ago
     Docs: man:fail2ban(1)
 Main PID: 1352440 (fail2ban-server)
    Tasks: 5 (limit: 18746)
   Memory: 13.6M
      CPU: 91ms
  CGroup: /system.slice/fail2ban.service
          ﹂1352440 /usr/bin/python3 /usr/bin/fail2ban-server -xf start...

mai 18 21:56:25 shire systemd[1]: Started Fail2ban Service.
mai 18 21:56:25 shire fail2ban-server[1352440]: Server ready

Dacă totul este în regulă, serviciul ar trebui să fie activ. Dacă există mesaje de eroare, puteți consulta mesajele din jurnalul Fail2ban folosind utilitarul journalctl.

sudo journalctl -u fail2ban

Configurarea Fail2ban

În cele din urmă, puteți începe să configurați Fail2ban pentru a vă proteja sistemul împotriva atacurilor prin forță brută și a altor activități suspecte.

Fișierul /etc/fail2ban/jail.conf stochează principalele configurați. Ca o practică optimă, evitați să faceți modificări în acel fișier special. Folosiți-l doar ca referință.

De fiecare dată când actualizați aplicația, fișierul de configurare jail.conf va fi suprascris. Pentru a evita pierderea configurației, faceți o coie numtă jail.local în cadrul aceluiași director. Folosiți pentru aceasta comanda cp.

cd /etc/fail2ban && cp jail.conf jail.local

În continuare, deschideți fișierul jail.conf folosind editorul de text preferat și ajustați următoarele configurații:

# "ignoreip" can be a list of IP adrdresses, CIDR makes or DNS hosts. Fail2ban
# will not ban a host whitch matchess an address in this list. Several addrresses
# can be defined using space (and/or comma) separator.
ignoreip = 127.0.0.1/8 ::1

# External command that will take an tagged arguments to ignore, e.g. <ip>,
# and return true if the IP is to be ignored. False otherwise.
#
# ignorecommand = /path/to/command <ip>
ignorecommand = 

# "bantime" is the number of seconds that a host is banned.
bnatime = 5m

# A host is banned if it has generated "maxretry" during the last "findtime"
# seconds.
findtime = 10m

# "maxretry" is the number of failures before a host get banned.
maxretry = 2

Fișierul de configurare este bine documentat, așa că citiți-l pentru a afla mai multe despre Fail2ban și opțiunile pe care le prezintă.

În cele din urmă, reporniți serviciul pentru ca modificările să aibă efectul dorit. Utilizați comanda:

sudo systemctl restart fail2ban

Testarea configurației

Odată configurat, puteți testa dacă configurația maxretry funcționează. Încercați să vă conectați prin SSH la calculatorul sau serverul pe care l-ați configurat.

Atunci când vi se solicită datele de autentificare, furnizați parola greșită, de două ori. Fail2ban va intra în acțiune și vă va bloca timp de cinci minute, conform configurației.

Acesta este doar un simplu caz de utilizare; acum configurați-vă serverul după bunul plac și nu ezitați să experimentați.

De final

Fail2ban este un instrument de securitate puternic și foarte ușor de configurat. Folosiți-l pentru a vă proteja în mod proactiv serverele și calculatoarele de atacurile prin forță brută.

Pe lângă Fail2ban, utilizați parole puternice și configurați-vă firewall-ul pentru o mai bună securitate. De asemenea, puteți să vă protejați rețeaua de acasă sau de la birou folosind un sistem firewall.

ThinkRoot99

Numele meu este Cristian Moldovan și sunt utilizator de Linux de peste 10 ani.Am făcut parte din mai multe echipe open source din România: Fundația Ceata, Linux Mint România, Rogentos Linux Group. Între 2014 și 2018 am fost propietarul și editorul site-ului de știri despre linux, gnulinux.ro și actual proprietar al rootlinux.ro

View all posts by ThinkRoot99 →

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *