Sådan installeres og bruges Fail2ban til Linux -serversikkerhed

I alle typer organisationer uanset hvilken type information der bruges eller antallet af brugere, der tilhører den, skal vi altid som personale i systemerne eller it -området sikre, at sikkerhed er en primær faktor inden for den, men når en eller flere administreres . flere servere.

Når vi taler om servere med Linux -distributioner, tror vi mange gange, at de er undtaget fra angreb, men i en online verden, der ofte ændrer sig, er der ikke længere et sikkert system, og enhver distribution udsættes for angreb fra malware, virus, DDOS -angreb og mange mere. Som administratorer eller brugere med adgang til begivenheder og serverlogfiler er det normalt at opdage forsøg på brutal kraftlogning, oversvømmelser på webstedet, udnyttelse af søgninger og andre trusler, der på en eller anden måde kan sætte integriteten og tilgængeligheden af ​​oplysninger.

Derfor er det nødvendigt at gøre brug af værktøjer, der giver os de bedste sikkerhedsmuligheder og alternativer; Og tænker over det Solvetic vil forklare, hvordan vi bruger Fail2ban til at opdage og sikre vores Linux -operativsystemer.

Hvad er Fail2ban?Fail2ban er udviklet som en indtrængningsforebyggende software, som analyserer serverlogfiler som / var / log / apache / error_log og dermed forbyder IP -adresser, der indeholder ondsindede tegn under hensyntagen til aspekter som for mange fejl i adgangskoder, sårbarhedssøgninger osv. .

Som hovedregel bruges Fail2Ban til at opdatere firewallreglerne, så den afviser IP -adresser i et bestemt tidsrum, men du kan også konfigurere en anden regel, der kan bringe systemets sikkerhed i fare. Selvom Fail2Ban kan reducere antallet af mislykkede godkendelsesforsøg i systemet, er det ideelt, at godkendelsesmetoderne ikke er svage. Til dette kan vi konfigurere tjenesterne til kun at bruge to faktorer eller offentlige / private godkendelsesmekanismer til at beskytte tjenesterne i Linux.

Krav til brug af Fail2ban
Den eneste afhængighed, vi skal bruge Fail2ban, er Python, afhængigt af den ønskede version vil det være følgende:

  • Fail2ban gren 0.9.x: Python> = 2.6 eller Python> = 3.2
  • Fail2ban gren 0.8.x: Python> = 2.4
Eventuelt kan Fail2ban kræve følgende elementer:
  • Netfilter / Iptables
  • Shorewall
  • TCP indpakning
  • Mail script
  • Ipset

Fail2ban funktioner
Den nuværende version af Fail2ban er 0.9.x, som tilbyder os funktioner som:

  • Python-baserede handlinger.
  • Database support.
  • Multiline analyse i filtre.
  • Tilpasset dato og klokkeslæt understøttelse af filtre.
  • Tidszone genkendelse som standard.
  • Timeout i forbudskommandoer.
  • Anerkendelsessæt i logfiler.
  • Python3 + support
  • Klient / server arkitektur.
  • Multi tråd.
  • Meget konfigurerbar ved brug af delte konfigurationsfiler.
  • Det bruger Netfilter / Iptables som standard, men det vil også være muligt at bruge TCP Wrapper og mange andre tilgængelige firewalls.
  • Det giver mulighed for at håndtere flere tjenester på samme tid som sshd, apache, vsftp og mere.
  • Kør kommandoer, når der registreres et mønster for den samme IP -adresse mere end X gange for at forbyde denne adresse.

1. Sådan installeres Fail2ban på Linux

BemærkI dette tilfælde vil vi bruge CentOS 7

Trin 1
For at installere Fail2ban vil vi udføre følgende kommandoer i deres rækkefølge:

Opdater systemet

 yum opdatering

Installer EPEL -lagrene
 yum installer epel-release

Vi indtaster bogstavet y for at bekræfte download og installation af EPEL -depotet.

Trin 2
Derefter installerer vi Fail2ban ved at udføre:

 yum installer fail2ban 

Trin 3
Efter denne analyse vil vi se, at alle afhængigheder af Fail2ban vil blive installeret. Vi accepterer download og installation af Fail2ban.

Trin 4
I tilfælde af brug af Debian eller Ubuntu skal vi udføre følgende:

 apt-get update && apt-get upgrade -y apt-get install fail2ban
Valgfrit kan vi aktivere e -mail -understøttelse for mailmeddelelser ved at installere sendmail som følger:

CentOS / RHEL

 yum installer sendmail

Debian / Ubuntu

 apt-get install sendmail-bin sendmail

Trin 5
Efter dette vil vi aktivere Fail2ban og Sendmail ved hjælp af følgende kommandoer:

 systemctl start fail2ban systemctl aktiver fail2ban systemctl start sendmail systemctl aktiver sendmail

2. Sådan konfigureres Fail2ban på Linux


Som standard bruger Fail2ban .conf -filerne i mappen / etc / fail2ban /; som du først får adgang til, men disse kan erstattes af .local -filer i det samme bibliotek.

Således behøver .local -filen ikke at inkludere alle indstillingerne i .conf -filen, men kun dem, vi ønsker at implementere for systemsikkerhed. Hver ændring skal foretages i .local -filerne, der ikke er i .conf, for at undgå at overskrive ændringerne ved opdatering af fail2ban -pakken.

Trin 1
Til dette vil vi kopiere den eksisterende fail2ban.conf -fil til fail2ban.local sådan:

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

Trin 2
Nu vil det være muligt at foretage ændringerne i .local -filen, der er oprettet ved hjælp af en teksteditor, de værdier, vi kan redigere, er:

loglevelDette er det niveau, hvor registreringerne gemmes. Der har vi muligheder som:

  • KRITISK
  • FEJL
  • ADVARSEL
  • VARSEL
  • INFO
  • FEJLFINDE

logtargetDer registreres handlingerne i en bestemt fil, standardværdien er /var/log/fail2ban.log, og de muligheder, der skal bruges, er:

  • STDOUT: Udsendelse af data.
  • STDERR: Genererer enhver fejl.
  • SYSLOG: Meddelelsesbaseret log.
  • Fil: Output til en fil

stikkontaktDet er den mappe, hvor socket -filen skal findes.

PidfileDet er placeringen af ​​pid -filen.

3. Sådan konfigureres Fail2ban jail.local på Linux


I Fail2ban er en af ​​de vigtigste filer jail.conf, som definerer fængslerne eller beskyttelsesforanstaltninger. Der skal du definere de tjenester, som Fail2ban skal aktiveres for.

Trin 1
Vi skal oprette en jail.local -fil for at kunne anvende ændringerne, for dette udfører vi:

 cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
Vi får adgang til denne lokale fil ved hjælp af følgende syntaks:
 nano /etc/fail2ban/jail.local
Der finder vi backendlinjen og redigerer standardværdien Auto til systemd:

BemærkI tilfælde af Ubuntu eller Debian er denne ændring ikke nødvendig.

Trin 2
Jail.local -filen aktiverer SSH som standard for Debian og Ubuntu, men ikke på CentOS, så hvis vi vil aktivere SSH, tilføjer vi linjen enabled = true under [sshd]:

4. Sådan konfigureres forbuds- og forsøgstider i Fail2ban Linux


Med Fail2ban kan vi konfigurere den måde, hvorpå en IP -adresse blokeres. Til dette formål; Til dette gør Fail2ban brug af bantime, findtime og maxretry.

bantimeAngiver antallet af sekunder, hvor en IP -adresse forbliver forbudt (10 min som standard).

FindtidDet er den tid, der går mellem loginforsøg, før værten fjernes. (standard 10 min)

maxretryHenviser til antallet af forsøg, der skal foretages, før et forbud anvendes. (som standard 3 forsøg).

5. Sådan konfigureres hvidlistede IP -adresser i Fail2ban Linux


Det er muligt at tilføje IP -adresser til Fail2ban -hvidlisten (tilladt). For at gøre dette skal vi i jail.local -filen fjerne kommentaren til følgende linje:
 ignorip = 127.0.0.1/8 :: 1
Der kan vi indtaste de IP -adresser, der skal ignoreres. IP -adresser skal adskilles med mellemrum eller kommaer.

6. Sådan oprettes e -mailadvarsler i Fail2ban Linux


Denne mulighed er ideel, hvis vi ønsker at modtage advarsler om ændringer eller nyheder i optegnelserne. For at gøre dette skal vi redigere filen /etc/fail2ban/jail.local, mulighederne er:

destemailDet er e -mailadressen, hvor meddelelsen vil blive modtaget.

Afsender navnDet er afsenderen, vi vil se, når meddelelsen er modtaget.

AfsenderAngiver e -mailadressen, hvorfra Fail2ban sender e -mailsne.

Standard -mta (mailoverførselsagent) er konfigureret med sendmail.

For at modtage en meddelelse via mail er det også nødvendigt at ændre indstillingen "Handling" på følgende linje:

 Handling =% (handling_) s
Ved følgende konfiguration:
 handling =% (action_mw) s handling =% (action_mwl) s
Forbud værten, og send mail med en whois -rapport
 % (action_mw) s

Det vil forbyde værten, generere whois -oplysninger og alle relevante oplysninger fra logfilen

 % (action_mwl) s

7. Yderligere Fail2ban Linux -konfigurationer


Hvis du vil konfigurere et fængsel, skal det være aktiveret i jail.local -filen. Syntaksen er som følger:
 [fængsel] … aktiveret = sandt
Vi kan se fængselsstrukturen for SSHD. Fail2ban tilføjer automatisk de ekstra parametre.

Det vil også være muligt at aktivere det filter, hvormed det kan identificeres, hvis en linje i registret er en fejl. Filterværdien er en reference til en fil med navnet på tjenesten efterfulgt af .conf. For eksempel kan vi bruge

 /etc/fail2ban/filter.d/sshd.conf.
Den syntaks, der skal bruges, er:
 filter = service
Når vi tilføjer fængsler, kan vi bruge Fail2ban -klienten til at se, hvilke der er aktive på serveren, for dette udfører vi følgende:
 fail2ban-klient status
Der vil de blive indsat, når vi opretter disse begrænsninger.

Vi kan se, hvordan Fail2ban er et praktisk værktøj til at øge sikkerheden i Linux -distributioner og undgå uautoriseret adgang og alt relateret til dårlig praksis, der udføres i organisationen.

wave wave wave wave wave