Kaip įdiegti ir naudoti „Fail2ban“, norint apsaugoti „Linux“ serverį

Visų tipų organizacijose, neatsižvelgiant į naudojamos informacijos tipą ar jai priklausančių vartotojų skaičių, visada kaip sistemos ar IT srities darbuotojai turime užtikrinti, kad saugumas yra pagrindinis jos veiksnys, tačiau kai valdoma viena ar kelios . daugiau serverių.

Kai mes kalbame apie serverius su „Linux“ platinimu, daug kartų manome, kad jie yra atleisti nuo atakų, tačiau dažnai besikeičiančiame internetiniame pasaulyje nebėra saugios sistemos ir bet kuris platinimas yra veikiamas kenkėjiškų programų, virusų, DDOS atakų ir daugelio kitų daugiau. Kaip administratoriai ar vartotojai, turintys prieigą prie įvykių ir serverio žurnalų, normalu aptikti bandymus prisijungti prie žiaurios jėgos, interneto potvynius, išnaudotojų paiešką ir kitas grėsmes, kurios vienaip ar kitaip gali padidinti informacijos vientisumą ir prieinamumą.

Todėl būtina pasinaudoti įrankiais, kurie suteikia mums geriausias saugumo galimybes ir alternatyvas; „Solvetic“ paaiškins, kaip naudoti „Fail2ban“ norint aptikti ir apsaugoti mūsų „Linux“ operacines sistemas.

Kas yra „Fail2ban“?„Fail2ban“ buvo sukurta kaip apsaugos nuo įsilaužimo programinė įranga, kuri analizuoja serverio žurnalo failus, tokius kaip / var / log / apache / error_log, ir tokiu būdu draudžia IP adresus, kuriuose yra kenkėjiškų ženklų, atsižvelgiant į tokius aspektus kaip per daug slaptažodžių gedimų, pažeidžiamumo paieškų ir kt. .

Paprastai „Fail2Ban“ naudojama užkardos taisyklėms atnaujinti, kad ji atmestų IP adresus per tam tikrą laikotarpį, tačiau taip pat galite sukonfigūruoti kitą taisyklę, dėl kurios gali kilti pavojus sistemos saugumui. Nors „Fail2Ban“ gali sumažinti nesėkmingų autentifikavimo bandymų skaičių sistemoje, idealu, kad autentifikavimo metodai nebūtų silpni. Tam galime sukonfigūruoti paslaugas naudoti tik du veiksnius arba viešus / privačius autentifikavimo mechanizmus, kad apsaugotų paslaugas „Linux“.

Reikalavimai naudoti „Fail2ban“
Vienintelė priklausomybė, kurią turėsime naudoti „Fail2ban“, bus „Python“, priklausomai nuo norimos versijos, ji bus tokia:

  • Fail2ban šaka 0.9.x: Python> = 2.6 arba Python> = 3.2
  • Fail2ban filialas 0.8.x: Python> = 2.4
Pasirinktinai „Fail2ban“ gali prireikti šių elementų:
  • „Netfilter“ / „Iptables“
  • Shorewall
  • „TCP Wrapper“
  • Pašto scenarijus
  • Ipsetas

„Fail2ban“ funkcijos
Dabartinė „Fail2ban“ versija yra 0.9.x, kuri siūlo tokias funkcijas kaip:

  • „Python“ veiksmai.
  • Duomenų bazės palaikymas.
  • Kelių eilučių analizė filtruose.
  • Pasirinktinis datos ir laiko palaikymas filtrams.
  • Laiko juostos atpažinimas pagal numatytuosius nustatymus.
  • Draudimo komandų skirtasis laikas.
  • Atpažinimo simbolių rinkinys žurnalo failuose.
  • „Python3 +“ palaikymas
  • Kliento / serverio architektūra.
  • Keli siūlai.
  • Labai konfigūruojamas naudojant padalintus konfigūracijos failus.
  • Pagal numatytuosius nustatymus jis naudoja „Netfilter“ / „Iptables“, tačiau taip pat bus galima naudoti „TCP Wrapper“ ir daugelį kitų galimų užkardų.
  • Tai leidžia vienu metu valdyti kelias paslaugas, tokias kaip sshd, apache, vsftp ir kt.
  • Vykdykite komandas, kai to paties IP adreso šablonas aptinkamas daugiau nei X kartų, kad uždraustumėte tą adresą.

1. Kaip įdiegti „Fail2ban“ „Linux“

PastabaŠiuo atveju naudosime „CentOS 7“

1 žingsnis
Norėdami įdiegti „Fail2ban“, vykdysime šias komandas tokia tvarka:

Atnaujinkite sistemą

 yum atnaujinimas

Įdiekite EPEL saugyklas
 yum įdiegti epel-release

Įvedame raidę y, kad patvirtintume EPEL saugyklos atsisiuntimą ir įdiegimą.

2 žingsnis
Tada įdiegiame „Fail2ban“ vykdydami:

 yum įdiegti fail2ban 

3 žingsnis
Po šios analizės pamatysime, kad bus įdiegtos visos „Fail2ban“ priklausomybės. Mes priimame „Fail2ban“ atsisiuntimą ir įdiegimą.

4 žingsnis
Jei naudojate „Debian“ ar „Ubuntu“, turime atlikti šiuos veiksmus:

 apt-get update && apt-get upgrade -y apt-get install fail2ban
Pasirinktinai galime įgalinti pašto palaikymą, pranešimų apie paštą, įdiegdami „sendmail“ taip:

CentOS / RHEL

 yum įdiegti sendmail

„Debian“ / „Ubuntu“

 apt-get įdiegti sendmail-bin sendmail

5 žingsnis
Po to mes įgalinsime „Fail2ban“ ir „Sendmail“ naudodami šias komandas:

 systemctl start fail2ban systemctl įgalinti fail2ban systemctl start sendmail systemctl įgalinti sendmail

2. Kaip sukonfigūruoti „Fail2ban“ „Linux“


Pagal numatytuosius nustatymus „Fail2ban“ naudoja .conf failus, esančius kataloge / etc / fail2ban /; kurį pirmiausia pasiekiate, tačiau juos galima pakeisti tame pačiame kataloge esančiais .local failais.

Taigi .local faile nereikia įtraukti visų .conf failo nustatymų, o tik tuos, kuriuos norime įdiegti sistemos saugumui. Kiekvienas pakeitimas turi būti padarytas .local failuose, kurių nėra .conf, kad būtų išvengta pakeitimų perrašymo atnaujinant failą „fail2ban“.

1 žingsnis
Norėdami tai padaryti, mes nukopijuosime esamą failą fail2ban.conf, esantį fail2ban.local, taip:

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

2 žingsnis
Dabar bus galima atlikti pakeitimus .local faile, sukurtame naudojant teksto redaktorių, reikšmės, kurias galime redaguoti:

loglevelTai lygis, kuriame įrašai saugomi. Turime tokių variantų kaip:

  • KRITINIS
  • KLAIDA
  • ĮSPĖJIMAS
  • PASTEBĖTI
  • INFORMACIJA
  • DEBUG

logtargetTen veiksmai įrašomi į konkretų failą, numatytoji reikšmė yra /var/log/fail2ban.log ir naudojamos parinktys:

  • STDOUT: bet kokių duomenų išvestis.
  • STDERR: Sukuria bet kokią klaidą.
  • SYSLOG: pranešimais pagrįstas žurnalas.
  • Failas: išveskite failą

lizdasTai katalogas, kuriame bus lizdo failas.

PidfileTai pid failo vieta.

3. Kaip sukonfigūruoti „Fail2ban jail.local“ „Linux“


Fail2ban vienas svarbiausių failų yra jail.conf, kuris apibrėžia kalėjimus arba apsaugos priemones. Ten turite apibrėžti paslaugas, kurioms turi būti įjungtas „Fail2ban“.

1 žingsnis
Mes ketiname sukurti failą jail.local, kad galėtume pritaikyti pakeitimus, todėl vykdome:

 cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
Mes pasiekiame šį vietinį failą naudodami šią sintaksę:
 nano /etc/fail2ban/jail.local
Ten surandame užpakalinę eilutę ir redaguojame numatytąją reikšmę Auto į systemd:

Pastaba„Ubuntu“ ar „Debian“ atveju šis pakeitimas nereikalingas.

2 žingsnis
„Jail.local“ failas pagal numatytuosius nustatymus įgalins SSH „Debian“ ir „Ubuntu“, bet ne „CentOS“, taigi, jei norime įjungti SSH, mes pridėsime eilutę „enabled = true“ prie [sshd]:

4. Kaip sukonfigūruoti uždraudimo ir pakartotinio bandymo laiką „Fail2ban Linux“


Naudodami „Fail2ban“ galime sukonfigūruoti IP adreso blokavimo būdą. Tuo tikslu; Tam „Fail2ban“ naudoja „bantime“, „findtime“ ir „maxretry“.

bantimeNurodo, kiek sekundžių IP adresas bus uždraustas (pagal numatytuosius nustatymus 10 minučių).

Laikas rastiTai yra laikas nuo bandymų prisijungti iki pagrindinio kompiuterio pašalinimo. (numatytasis 10 min.)

maxretryNurodo bandymų, kuriuos reikia atlikti prieš draudimą, skaičių. (pagal numatytuosius nustatymus 3 bandymai).

5. Kaip sukonfigūruoti į baltąjį sąrašą įtrauktus IP adresus „Fail2ban Linux“


Į baltąjį „Fail2ban“ sąrašą galima įtraukti IP adresus (leidžiama). Norėdami tai padaryti, faile jail.local turime panaikinti šią eilutę:
 ignoreip = 127.0.0.1/8 :: 1
Ten galime įvesti IP adresus, į kuriuos reikėtų nekreipti dėmesio. IP adresai turi būti atskirti tarpais arba kableliais.

6. Kaip sukurti el. Pašto įspėjimus „Fail2ban Linux“


Ši parinktis idealiai tinka, jei norime gauti įspėjimus apie bet kokius įrašų pasikeitimus ar naujienas. Norėdami tai padaryti, turime redaguoti failą /etc/fail2ban/jail.local, galimos šios parinktys:

paštuTai el. Pašto adresas, kuriuo bus gautas pranešimas.

Siuntėjo vardasGavę pranešimą pamatysime siuntėją.

SiuntėjasNurodo el. Pašto adresą, iš kurio „Fail2ban“ siųs el.

Numatytasis mta (pašto perdavimo agentas) yra sukonfigūruotas naudojant sendmail.

Jei norite gauti pranešimą paštu, taip pat turėsite pakeisti nustatymą „Veiksmas“ šioje eilutėje:

 Veiksmas =% (action_) s
Pagal šią konfigūraciją:
 action =% (action_mw) s action =% (action_mwl) s
Uždrausti šeimininką ir siųsti laiškus su „whois“ ataskaita
 % (action_mw) s

Tai uždraus pagrindinį kompiuterį, generuos „whois“ informaciją ir visą svarbią informaciją iš žurnalo failo

 % (action_mwl) s

7. Papildomos „Fail2ban Linux“ konfigūracijos


Jei norite sukonfigūruoti kalėjimą, jis turi būti įjungtas faile jail.local. Sintaksė yra tokia:
 [kalėjimas]… įjungta = tiesa
Mes galime pamatyti SSHD kalėjimo struktūrą. „Fail2ban“ automatiškai prideda papildomus parametrus.

Taip pat bus galima įjungti filtrą, pagal kurį jį galima atpažinti, jei registro eilutėje yra gedimas. Filtro reikšmė yra nuoroda į failą su paslaugos pavadinimu, po kurio eina .conf. Pavyzdžiui, galime naudoti

 /etc/fail2ban/filter.d/sshd.conf.
Naudojama sintaksė:
 filtras = paslauga
Pridėdami kalėjimų, galime naudoti „Fail2ban“ klientą, kad pamatytume, kurie iš jų yra aktyvūs serveryje, todėl vykdome šiuos veiksmus:
 fail2ban-kliento būsena
Ten jie bus dislokuoti, kai mes sukursime šiuos apribojimus.

Matome, kaip „Fail2ban“ yra praktinė priemonė, padedanti padidinti „Linux“ platinimo saugumą, išvengiant neteisėtos prieigos ir visko, kas susiję su bloga praktika, atliekama organizacijoje.

Padėsite svetainės plėtrą, dalintis puslapį su draugais

wave wave wave wave wave