Cum se instalează și se utilizează Fail2ban pentru securitatea serverului Linux

În toate tipurile de organizații, indiferent de tipul de informații utilizate sau de numărul de utilizatori care îi aparțin, întotdeauna în calitate de personal din sisteme sau din zona IT trebuie să ne asigurăm că securitatea este un factor primordial în cadrul acesteia, dar atunci când unul sau mai mulți sunt gestionați mai multe servere.

Când vorbim despre servere cu distribuții Linux, de multe ori credem că sunt scutite de atacuri, dar într-o lume online care se schimbă frecvent, nu mai există un sistem sigur și orice distribuție este expusă atacurilor de malware, viruși, atacuri DDOS și multe altele. Mai Mult. În calitate de administratori sau utilizatori cu acces la evenimente și jurnale de server, este normal să detectăm încercările de conectare cu forță brută, inundații web, căutarea exploatatorilor și alte amenințări care într-un fel sau altul pot pune integritatea și disponibilitatea informațiilor.

Prin urmare, este necesar să se utilizeze instrumentele care ne oferă cele mai bune opțiuni și alternative de securitate; Și gândindu-ne la asta, Solvetic va explica cum să folosim Fail2ban pentru a detecta și securiza sistemele noastre de operare Linux.

Ce este Fail2ban?Fail2ban a fost dezvoltat ca un software de prevenire a intruziunilor, care analizează fișierele de jurnal ale serverului precum / var / log / apache / error_log și astfel interzice adresele IP care conțin semne rău intenționate luând în considerare aspecte precum prea multe eșecuri în parole, căutări de vulnerabilitate etc. .

Ca regulă generală, Fail2Ban este utilizat pentru a actualiza regulile firewall-ului astfel încât să respingă adresele IP într-o anumită perioadă de timp, dar puteți configura și o altă regulă care ar putea pune în pericol securitatea sistemului. Deși Fail2Ban poate reduce rata încercărilor de autentificare nereușite în cadrul sistemului, este ideal ca metodele de autentificare să nu fie slabe. Pentru aceasta putem configura serviciile pentru a utiliza doar doi factori sau mecanisme de autentificare publice / private pentru a proteja serviciile în Linux.

Cerințe pentru utilizarea Fail2ban
Singura dependență pe care va trebui să o folosim Fail2ban va fi Python, în funcție de versiunea dorită va fi următoarea:

  • Ramură Fail2ban 0.9.x: Python> = 2.6 sau Python> = 3.2
  • Ramură Fail2ban 0.8.x: Python> = 2.4
Opțional, Fail2ban poate solicita următoarele elemente:
  • Netfilter / Iptables
  • Shorewall
  • TCP Wrapper
  • Script de mail
  • Supărat

Fail2ban Caracteristici
Versiunea actuală a Fail2ban este 0.9.x care ne oferă caracteristici precum:

  • Acțiuni bazate pe Python.
  • Suport pentru baze de date.
  • Analiza multilinie în filtre.
  • Suport personalizat pentru dată și oră pentru filtre.
  • Recunoașterea fusului orar în mod implicit.
  • Timeout în comenzile de interdicție.
  • Set de caractere de recunoaștere în fișierele jurnal.
  • Suport Python3 +
  • Arhitectura client / server.
  • Multi thread.
  • Foarte configurabil prin utilizarea fișierelor de configurare divizate.
  • Utilizează implicit Netfilter / Iptables, dar va fi, de asemenea, posibil să utilizați TCP Wrapper și multe alte firewall-uri disponibile.
  • Permite gestionarea mai multor servicii în același timp, cum ar fi sshd, apache, vsftp și multe altele.
  • Rulați comenzi atunci când un model este detectat pentru aceeași adresă IP de mai mult de X ori pentru a interzice acea adresă.

1. Cum se instalează Fail2ban pe Linux

NotăPentru acest caz vom folosi CentOS 7

Pasul 1
Pentru a instala Fail2ban vom executa următoarele comenzi în ordinea lor:

Actualizați sistemul

 yum actualizare

Instalați depozitele EPEL
 instalează epel-release

Introducem litera y pentru a confirma descărcarea și instalarea depozitului EPEL.

Pasul 2
Apoi instalăm Fail2ban executând:

 instalează fail2ban 

Pasul 3
După această analiză vom vedea că vor fi instalate toate dependențele Fail2ban. Acceptăm descărcarea și instalarea Fail2ban.

Pasul 4
În cazul utilizării Debian sau Ubuntu trebuie să executăm următoarele:

 apt-get update && apt-get upgrade -y apt-get install fail2ban
Opțional, putem activa asistența prin e-mail, pentru notificările prin e-mail, instalând sendmail după cum urmează:

CentOS / RHEL

 instalează sendmail

Debian / Ubuntu

 apt-get install sendmail-bin sendmail

Pasul 5
După aceasta, vom activa Fail2ban și Sendmail folosind următoarele comenzi:

 systemctl start fail2ban systemctl enable fail2ban systemctl start sendmail systemctl enable sendmail

2. Cum se configurează Fail2ban pe Linux


În mod implicit, Fail2ban folosește fișierele .conf aflate în directorul / etc / fail2ban /; la care accesați mai întâi, dar acestea pot fi înlocuite cu fișiere .local situate în același director.

Astfel, fișierul .local nu trebuie să includă toate setările în fișierul .conf, ci doar pe cele pe care dorim să le implementăm pentru securitatea sistemului. Fiecare modificare trebuie făcută fișierelor .local care nu se află în .conf pentru a evita suprascrierea modificărilor la actualizarea pachetului fail2ban.

Pasul 1
Pentru aceasta, vom copia fișierul fail2ban.conf existent în fail2ban.local astfel:

 cp /etc/fail2ban/fail2ban.conf /etc/fail2ban/fail2ban.local

Pasul 2
Acum va fi posibil să faceți modificările în fișierul .local creat folosind un editor de text, valorile pe care le putem edita sunt:

loglevelAcesta este nivelul în care sunt stocate înregistrările. Acolo avem opțiuni precum:

  • CRITIC
  • EROARE
  • AVERTIZARE
  • ÎNȘTIINȚARE
  • INFO
  • DEBUG

logtargetAcolo acțiunile sunt înregistrate într-un anumit fișier, valoarea implicită este /var/log/fail2ban.log și opțiunile de utilizat sunt:

  • STDOUT: ieșire a oricăror date.
  • STDERR: generează orice eroare.
  • SYSLOG: Jurnal bazat pe mesaje.
  • Fișier: ieșire într-un fișier

prizăEste directorul în care va fi localizat fișierul socket.

PidfileEste locația fișierului pid.

3. Cum se configurează Fail2ban jail.local pe Linux


În Fail2ban, unul dintre cele mai importante fișiere este jail.conf, care definește închisorile sau măsurile de protecție. Acolo trebuie să definiți serviciile pentru care trebuie activat Fail2ban.

Pasul 1
Vom crea un fișier jail.local pentru a putea aplica modificările, pentru aceasta executăm:

 cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
Accesăm acest fișier local folosind următoarea sintaxă:
 nano /etc/fail2ban/jail.local
Acolo localizăm linia backend și edităm valoarea implicită Auto la systemd:

NotăÎn cazul Ubuntu sau Debian, această modificare nu va fi necesară.

Pasul 2
Fișierul jail.local va activa SSH în mod implicit pentru Debian și Ubuntu, dar nu pe CentOS, deci dacă dorim să activăm SSH, vom adăuga linia enabled = true sub [sshd]:

4. Cum se configurează interdicția și reîncercarea în Fail2ban Linux


Cu Fail2ban putem configura modul în care este blocată o adresă IP. Pentru acel scop; Pentru aceasta, Fail2ban folosește bantime, timp de căutare și maxretry.

bantimeIndică numărul de secunde în care o adresă IP va rămâne interzisă (10 minute în mod implicit).

Găsește timpEste cantitatea de timp dintre încercările de conectare, înainte ca gazda să fie eliminată. (implicit 10 min)

maxretrySe referă la numărul de încercări care trebuie făcute înainte de aplicarea unei interdicții. (implicit 3 încercări).

5. Cum se configurează adresele IP din lista albă în Fail2ban Linux


Este posibil să adăugați adrese IP la lista albă Fail2ban (permisă). Pentru a face acest lucru, în fișierul jail.local trebuie să decomentăm următoarea linie:
 ignoreip = 127.0.0.1/8 :: 1
Acolo putem introduce adresele IP care ar trebui ignorate. Adresele IP trebuie separate prin spații sau virgule.

6. Cum se creează alerte prin e-mail în Fail2ban Linux


Această opțiune este ideală dacă dorim să primim alerte cu privire la orice modificare sau știre din evidență. Pentru a face acest lucru trebuie să edităm fișierul /etc/fail2ban/jail.local, opțiunile sunt:

destemailEste adresa de e-mail unde va fi primită notificarea.

Numele expeditoruluiExpeditorul îl vom vedea când mesajul va fi primit.

ExpeditorIndică adresa de e-mail de unde Fail2ban va trimite e-mailurile.

MTA implicit (agent de transfer de e-mail) este configurat cu sendmail.

Pentru a primi o notificare prin poștă, va fi, de asemenea, necesar să modificați setarea „Acțiune” din următoarea linie:

 Acțiune =% (acțiune_) s
Prin următoarea configurație:
 action =% (action_mw) s action =% (action_mwl) s
Interziceți gazda și trimiteți e-mail cu un raport whois
 % (action_mw) s

Acesta va interzice gazda, va genera informații whois și toate informațiile relevante din fișierul jurnal

 % (action_mwl) s

7. Configurări suplimentare Fail2ban Linux


Dacă doriți să configurați o închisoare, aceasta trebuie activată în fișierul jail.local. Sintaxa este următoarea:
 [închisoare] … activat = adevărat
Putem vedea structura închisorii pentru SSHD. Fail2ban adaugă automat parametrii suplimentari.

De asemenea, va fi posibil să activați filtrul prin care poate fi identificat dacă o linie din registru este o eroare. Valoarea filtrului este o referință la un fișier cu numele serviciului urmat de .conf. De exemplu, putem folosi

 /etc/fail2ban/filter.d/sshd.conf.
Sintaxa de utilizat este:
 filtru = serviciu
Pe măsură ce adăugăm închisori, putem folosi clientul Fail2ban pentru a vedea care sunt active pe server, pentru aceasta executăm următoarele:
 statutul de client fail2ban
Acolo vor fi implementate pe măsură ce creăm aceste restricții.

Putem vedea cum Fail2ban este un utilitar practic pentru creșterea securității în distribuțiile Linux, evitând accesul neautorizat și tot ceea ce privește practicile rele care sunt executate în organizație.

Vei ajuta la dezvoltarea site-ului, partajarea pagina cu prietenii

wave wave wave wave wave