Kako instalirati i koristiti Fail2ban za sigurnost poslužitelja Linux

U svim vrstama organizacija, bez obzira na vrstu korištenih informacija ili broj korisnika koji joj pripadaju, uvijek kao osoblje u sustavima ili IT području moramo osigurati da je sigurnost primarni čimbenik unutar nje, ali kada se upravlja jednom ili više njih više poslužitelja.

Kad govorimo o poslužiteljima s distribucijama Linuxa, mnogo puta pomislimo da su izuzeti od napada, ali u često mijenjajućem se svijetu na mreži više nema sigurnog sustava i svaka distribucija je izložena napadima zlonamjernog softvera, virusa, DDOS napada i mnogih drugih više. Kao administratori ili korisnici s pristupom događajima i zapisnicima poslužitelja, normalno je otkriti pokušaje prijave grubom silom, web poplave, pretraživanje izrabljivača i druge prijetnje koje na ovaj ili onaj način mogu ugroziti integritet i dostupnost informacija.

Stoga je potrebno koristiti alate koji nam pružaju najbolje sigurnosne mogućnosti i alternative; I razmišljajući o tome, Solvetic će objasniti kako koristiti Fail2ban za otkrivanje i zaštitu naših Linux operativnih sustava.

Što je Fail2ban?Fail2ban je razvijen kao softver za sprječavanje upada, koji analizira datoteke dnevnika poslužitelja kao što su / var / log / apache / error_log i na taj način zabranjuje IP adrese koje sadrže zlonamjerne znakove uzimajući u obzir aspekte poput previše grešaka u lozinkama, pretraživanja ranjivosti itd. .

Općenito se pravilo Fail2Ban koristi za ažuriranje pravila vatrozida tako da odbacuje IP adrese u određenom vremenskom razdoblju, ali možete konfigurirati i drugo pravilo koje bi moglo ugroziti sigurnost sustava. Iako Fail2Ban može smanjiti stopu neuspješnih pokušaja provjere autentičnosti unutar sustava, idealno je da metode provjere autentičnosti nisu slabe. Za to možemo konfigurirati usluge da koriste samo dva faktora ili javne / privatne mehanizme provjere autentičnosti za zaštitu usluga u Linuxu.

Zahtjevi za korištenje Fail2ban
Jedina ovisnost koju ćemo morati koristiti za Fail2ban bit će Python, ovisno o željenoj verziji to će biti sljedeće:

  • Fail2ban grana 0.9.x: Python> = 2.6 ili Python> = 3.2
  • Fail2ban grana 0.8.x: Python> = 2.4
Izborno, Fail2ban može zahtijevati sljedeće stavke:
  • Netfilter / Iptables
  • Shorewall
  • TCP omot
  • Skripta pošte
  • Ipset

Značajke Fail2ban
Trenutna verzija Fail2ban je 0.9.x koja nam nudi značajke kao što su:

  • Radnje temeljene na Pythonu.
  • Podrška za baze podataka.
  • Višelinijska analiza u filterima.
  • Podrška za prilagođene datume i vrijeme za filtre.
  • Prepoznavanje vremenske zone prema zadanim postavkama.
  • Istek u naredbama zabrane.
  • Skup znakova za prepoznavanje u datotekama dnevnika.
  • Podrška za Python3 +
  • Arhitektura klijent / poslužitelj.
  • Više niti.
  • Visoko se može konfigurirati korištenjem podijeljenih konfiguracijskih datoteka.
  • Prema zadanim postavkama koristi Netfilter / Iptables, ali bit će moguće koristiti i TCP Wrapper te mnoge druge dostupne vatrozidove.
  • Omogućuje rukovanje s više usluga istodobno, poput sshd, apache, vsftp i drugih.
  • Izvršite naredbe kada se otkrije uzorak za istu IP adresu više od X puta da biste zabranili tu adresu.

1. Kako instalirati Fail2ban na Linux

BilješkaU ovom slučaju koristit ćemo CentOS 7

Korak 1
Da bismo instalirali Fail2ban, izvršit ćemo sljedeće naredbe prema njihovom redoslijedu:

Ažurirajte sustav

 yum update

Instalirajte spremišta EPEL -a
 yum instalirati epel-release

Upisujemo slovo y kako bismo potvrdili preuzimanje i instalaciju EPEL spremišta.

Korak 2
Zatim instaliramo Fail2ban izvršavanjem:

 yum install fail2ban 

Korak 3
Nakon ove analize vidjet ćemo da će sve ovisnosti Fail2bana biti instalirane. Prihvaćamo preuzimanje i instaliranje Fail2ban.

Korak 4
U slučaju korištenja Debiana ili Ubuntua moramo izvršiti sljedeće:

 apt-get update && apt-get upgrade -y apt-get install fail2ban
Izborno, možemo omogućiti podršku za poštu, za obavijesti putem pošte, instaliranjem sendmail na sljedeći način:

CentOS / RHEL

 yum install sendmail

Debian / Ubuntu

 apt-get install sendmail-bin sendmail

Korak 5
Nakon toga omogućit ćemo Fail2ban i Sendmail pomoću sljedećih naredbi:

 systemctl start fail2ban systemctl omogućiti fail2ban systemctl start sendmail systemctl omogućiti sendmail

2. Kako konfigurirati Fail2ban na Linuxu


Fail2ban prema zadanim postavkama koristi .conf datoteke koje se nalaze u / etc / fail2ban / direktoriju; kojima prvo pristupate, ali se one mogu zamijeniti datotekama .local koje se nalaze u istom direktoriju.

Dakle, .local datoteka ne mora uključivati ​​sve postavke u .conf datoteci, već samo one koje želimo implementirati radi sigurnosti sustava. Svaka se promjena mora izvršiti u .local datotekama koje nisu u .conf kako bi se izbjeglo prepisivanje promjena prilikom ažuriranja fail2ban paketa.

Korak 1
Za ovo ćemo kopirati postojeću datoteku fail2ban.conf u fail2ban.local ovako:

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

Korak 2
Sada će biti moguće izvršiti promjene u .local datoteci stvorenoj pomoću uređivača teksta, vrijednosti koje možemo urediti su:

loglevelOvo je razina na kojoj se pohranjuju zapisi. Tu imamo mogućnosti kao što su:

  • KRITIČNO
  • POGREŠKA
  • UPOZORENJE
  • OBAVIJEST
  • INFO
  • RAZREŠAVANJE

logtargetTamo se radnje bilježe u određenu datoteku, zadana vrijednost je /var/log/fail2ban.log, a mogućnosti korištenja su:

  • STDOUT: Izlaz svih podataka.
  • STDERR: Generira bilo koju pogrešku.
  • SYSLOG: Dnevnik temeljen na poruci.
  • Datoteka: izlaz u datoteku

utičnicaTo je direktorij u kojem će se nalaziti datoteka utičnice.

PidfileTo je mjesto pid datoteke.

3. Kako konfigurirati Fail2ban jail.local na Linuxu


U Fail2banu jedna od najvažnijih datoteka je jail.conf koja definira zatvore ili mjere zaštite. Tamo morate definirati usluge za koje Fail2ban mora biti omogućen.

Korak 1
Stvorit ćemo datoteku jail.local kako bismo mogli primijeniti izmjene, za to izvršavamo:

 cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
Ovoj lokalnoj datoteci pristupamo pomoću sljedeće sintakse:
 nano /etc/fail2ban/jail.local
Tamo lociramo pozadinsku liniju i uređujemo zadanu vrijednost Auto u systemd:

BilješkaU slučaju Ubuntua ili Debiana, ova izmjena neće biti potrebna.

Korak 2
Datoteka jail.local omogućit će SSH prema zadanim postavkama za Debian i Ubuntu, ali ne i za CentOS, pa ako želimo omogućiti SSH, dodat ćemo redak enabled = true pod [sshd]:

4. Kako konfigurirati vrijeme zabrane i ponovnog pokušaja u Fail2ban Linuxu


Uz Fail2ban možemo konfigurirati način blokiranja IP adrese. U tu svrhu; U tu svrhu Fail2ban koristi bantime, findtime i maxretry.

bantimeOznačava broj sekundi u kojima će IP adresa ostati zabranjena (10 minuta prema zadanim postavkama).

FindtimeTo je vrijeme između pokušaja prijave, prije nego što se host ukloni. (zadano 10 min)

maxretryOdnosi se na broj pokušaja koji se moraju učiniti prije primjene zabrane. (prema zadanim postavkama 3 pokušaja).

5. Kako konfigurirati IP adrese s bijele liste u Fail2ban Linuxu


Moguće je dodati IP adrese na Fail2ban bijelu listu (dopušteno). Da bismo to učinili, u datoteci jail.local moramo ukloniti komentar iz sljedećeg retka:
 ignoreip = 127.0.0.1/8 :: 1
Tamo možemo unijeti IP adrese koje treba zanemariti. IP adrese moraju biti odvojene razmacima ili zarezima.

6. Kako stvoriti upozorenja e -poštom u Fail2ban Linuxu


Ova je opcija idealna ako želimo primati upozorenja o bilo kakvim promjenama ili vijestima u evidenciji. Da bismo to učinili, moramo urediti datoteku /etc/fail2ban/jail.local, opcije su sljedeće:

destemailTo je adresa e -pošte na koju će se primiti obavijest.

Ime pošiljateljaPošiljatelja ćemo vidjeti kad primimo poruku.

PošiljateljOznačava adresu e -pošte s koje Fail2ban šalje e -poštu.

Zadani mta (agent za prijenos pošte) konfiguriran je sa sendmail.

Za primanje obavijesti poštom također će biti potrebno promijeniti postavku "Radnja" u sljedećem retku:

 Radnja =% (action_) s
Prema sljedećoj konfiguraciji:
 radnja =% (action_mw) s radnja =% (action_mwl) s
Zabranite hostu i pošaljite poštu s whois izvještajem
 % (action_mw) s

Zabranit će host, generirati whois informacije i sve relevantne podatke iz log datoteke

 % (action_mwl) s

7. Dodatne Fail2ban Linux konfiguracije


Ako želite konfigurirati zatvor, mora se omogućiti u datoteci jail.local. Sintaksa je sljedeća:
 [zatvor] … omogućeno = istina
Možemo vidjeti strukturu zatvora za SSHD. Fail2ban automatski dodaje dodatne parametre.

Također će biti moguće omogućiti filtar po kojem se može identificirati ako je redak u registru greška. Vrijednost filtra je referenca na datoteku s imenom usluge iza koje slijedi .conf. Na primjer, možemo koristiti

 /etc/fail2ban/filter.d/sshd.conf.
Sintaksa za korištenje je:
 filter = usluga
Dok dodajemo zatvore, možemo koristiti Fail2ban klijent da vidimo koji su aktivni na poslužitelju, za to izvršavamo sljedeće:
 fail2ban-status klijenta
Tamo će biti raspoređeni dok stvaramo ova ograničenja.

Možemo vidjeti kako je Fail2ban praktičan alat za povećanje sigurnosti u distribucijama Linuxa izbjegavajući neovlašteni pristup i sve u vezi s lošim praksama koje se izvršavaju u organizaciji.

Vi ćete pomoći u razvoju web stranice, dijeljenje stranicu sa svojim prijateljima

wave wave wave wave wave