Hur man installerar och använder Fail2ban för Linux -serversäkerhet

I alla typer av organisationer oavsett vilken typ av information som används eller antalet användare som tillhör den, måste vi alltid som personal inom system- eller IT -området se till att säkerheten är en primär faktor inom den, men när en eller flera hanteras . fler servrar.

När vi pratar om servrar med Linux -distributioner tror vi många gånger att de är undantagna från attacker, men i en online -värld som ofta förändras finns det inte längre ett säkert system och all distribution utsätts för attacker av skadlig kod, virus, DDOS -attacker och många Mer. Som administratörer eller användare med tillgång till händelser och serverloggar är det normalt att upptäcka inloggningsförsök med grov kraft, webböversvämningar, exploateringssökning och andra hot som på ett eller annat sätt kan försämra integriteten och tillgängligheten av information.

Därför är det nödvändigt att använda verktyg som ger oss de bästa säkerhetsalternativen och alternativen; Och tänker på det Solvetic kommer att förklara hur vi använder Fail2ban för att upptäcka och säkra våra Linux -operativsystem.

Vad är Fail2ban?Fail2ban har utvecklats som ett program för att förhindra intrång, som analyserar serverloggfiler som / var / log / apache / error_log och därmed förbjuder IP -adresser som innehåller skadliga tecken med hänsyn till aspekter som för många fel i lösenord, sårbarhetssökningar etc. .

Som en allmän regel används Fail2Ban för att uppdatera brandväggsreglerna så att de avvisar IP -adresser under en viss tidsperiod, men du kan också konfigurera en annan regel som kan äventyra systemets säkerhet. Även om Fail2Ban kan minska graden av misslyckade autentiseringsförsök inom systemet, är det idealiskt att autentiseringsmetoderna inte är svaga. För detta kan vi konfigurera tjänsterna till att endast använda två faktorer eller offentliga / privata autentiseringsmekanismer för att skydda tjänsterna i Linux.

Krav för att använda Fail2ban
Det enda beroende som vi kommer att behöva använda Fail2ban är Python, beroende på önskad version kommer det att vara följande:

  • Fail2ban gren 0.9.x: Python> = 2.6 eller Python> = 3.2
  • Fail2ban gren 0.8.x: Python> = 2.4
Alternativt kan Fail2ban kräva följande objekt:
  • Netfilter / Iptables
  • Strandvägg
  • TCP -omslag
  • E -postskript
  • Ipset

Fail2ban funktioner
Den nuvarande versionen av Fail2ban är 0.9.x som erbjuder oss funktioner som:

  • Pythonbaserade åtgärder.
  • Databasstöd.
  • Flerlinjeanalys i filter.
  • Anpassat datum och tid för filter.
  • Tidszonigenkänning som standard.
  • Timeout i förbudskommandon.
  • Erkännande teckenuppsättning i loggfiler.
  • Python3 + stöd
  • Klient / serverarkitektur.
  • Multitråd.
  • Mycket konfigurerbar genom användning av delade konfigurationsfiler.
  • Den använder Netfilter / Iptables som standard, men det kommer också att vara möjligt att använda TCP Wrapper och många andra tillgängliga brandväggar.
  • Det gör det möjligt att hantera flera tjänster samtidigt som sshd, apache, vsftp och mer.
  • Kör kommandon när ett mönster detekteras för samma IP -adress mer än X gånger för att förbjuda den adressen.

1. Hur man installerar Fail2ban på Linux

NoteraI det här fallet kommer vi att använda CentOS 7

Steg 1
För att installera Fail2ban kommer vi att utföra följande kommandon i sin ordning:

Uppdatera systemet

 yum uppdatering

Installera EPEL -lagren
 yum installera epel-release

Vi anger bokstaven y för att bekräfta nedladdning och installation av EPEL -förvaret.

Steg 2
Sedan installerar vi Fail2ban genom att köra:

 yum installera fail2ban 

Steg 3
Efter denna analys kommer vi att se att alla beroenden för Fail2ban kommer att installeras. Vi accepterar nedladdning och installation av Fail2ban.

Steg 4
Om vi ​​använder Debian eller Ubuntu måste vi utföra följande:

 apt-get update && apt-get upgrade -y apt-get install fail2ban
Alternativt kan vi aktivera e -poststöd för e -postaviseringar genom att installera sendmail enligt följande:

CentOS / RHEL

 yum installera sendmail

Debian / Ubuntu

 apt-get install sendmail-bin sendmail

Steg 5
Efter detta kommer vi att aktivera Fail2ban och Sendmail med följande kommandon:

 systemctl start fail2ban systemctl aktivera fail2ban systemctl start sendmail systemctl aktivera sendmail

2. Så här konfigurerar du Fail2ban på Linux


Som standard använder Fail2ban .conf -filerna i / etc / fail2ban / katalogen; som du kommer åt först, men dessa kan ersättas av .local -filer som finns i samma katalog.

Därför behöver .local -filen inte inkludera alla inställningar i .conf -filen, utan bara de som vi vill implementera för systemsäkerhet. Varje ändring måste göras i .local -filerna som inte finns i .conf för att undvika att skriva över ändringarna när du uppdaterar paketet fail2ban.

Steg 1
För detta kommer vi att kopiera den befintliga filen fail2ban.conf i fail2ban.local så här:

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

Steg 2
Nu kommer det att vara möjligt att göra ändringarna i .local -filen som skapats med en textredigerare, värdena som vi kan redigera är:

loglevelDetta är nivån där posterna lagras. Där har vi alternativ som:

  • KRITISK
  • FEL
  • VARNING
  • LÄGGA MÄRKE TILL
  • INFO
  • DEBUG

logtargetDär registreras åtgärderna i en specifik fil, standardvärdet är /var/log/fail2ban.log och alternativen att använda är:

  • STDOUT: Utmatning av data.
  • STDERR: Genererar alla fel.
  • SYSLOG: Meddelandebaserad logg.
  • Fil: Utmatning till en fil

uttagDet är katalogen där socketfilen kommer att finnas.

PidfileDet är platsen för pid -filen.

3. Så här konfigurerar du Fail2ban jail.local på Linux


I Fail2ban är en av de viktigaste filerna jail.conf, som definierar fängelserna eller skyddsåtgärder. Där måste du definiera de tjänster som Fail2ban måste aktiveras för.

Steg 1
Vi ska skapa en jail.local -fil för att kunna tillämpa ändringarna, för detta utför vi:

 cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
Vi får åtkomst till denna lokala fil med följande syntax:
 nano /etc/fail2ban/jail.local
Där hittar vi backend -raden och redigerar standardvärdet Auto till systemd:

NoteraFör Ubuntu eller Debian är denna ändring inte nödvändig.

Steg 2
Jail.local -filen aktiverar SSH som standard för Debian och Ubuntu, men inte på CentOS, så om vi vill aktivera SSH kommer vi att lägga till raden enabled = true under [sshd]:

4. Så här konfigurerar du ban- och försökstider i Fail2ban Linux


Med Fail2ban kan vi konfigurera hur en IP -adress blockeras. I det syftet; För detta använder Fail2ban bantime, findtime och maxretry.

bantimeAnger hur många sekunder en IP -adress förblir förbjuden (10 min som standard).

Hitta tidDet är tiden mellan inloggningsförsök, innan värden tas bort. (standard 10 min)

maxretryAvser antalet försök som måste göras innan ett förbud tillämpas. (som standard 3 försök).

5. Hur man konfigurerar vitlistade IP -adresser i Fail2ban Linux


Det är möjligt att lägga till IP -adresser till Fail2ban -vitlistan (tillåtet). För att göra detta måste vi i filen jail.local kommentera följande rad:
 ignorip = 127.0.0.1/8 :: 1
Där kan vi ange de IP -adresser som bör ignoreras. IP -adresser måste separeras med mellanslag eller kommatecken.

6. Hur man skapar e -postvarningar i Fail2ban Linux


Det här alternativet är perfekt om vi vill få varningar om ändringar eller nyheter i posterna. För att göra detta måste vi redigera filen /etc/fail2ban/jail.local, alternativen är:

destemailDet är e -postadressen där meddelandet kommer att tas emot.

Avsändarens namnDet är avsändaren som vi kommer att se när meddelandet tas emot.

AvsändareAnger e -postadressen från vilken Fail2ban skickar e -postmeddelandena.

Standard -mta (e -postöverföringsagent) är konfigurerad med sendmail.

För att få ett meddelande via e -post måste du också ändra inställningen "Åtgärd" på följande rad:

 Åtgärd =% (action_) s
Med följande konfiguration:
 action =% (action_mw) s action =% (action_mwl) s
Spärra värden och skicka e -post med en whois -rapport
 % (action_mw) s

Det kommer att förbjuda värden, generera whois -information och all relevant information från loggfilen

 % (action_mwl) s

7. Ytterligare Fail2ban Linux -konfigurationer


Om du vill konfigurera ett fängelse måste det vara aktiverat i filen jail.local. Syntaxen är följande:
 [fängelse] … aktiverat = sant
Vi kan se fängelsestrukturen för SSHD. Fail2ban lägger automatiskt till ytterligare parametrar.

Det kommer också att vara möjligt att aktivera filtret genom vilket det kan identifieras om en rad i registret är ett fel. Filtervärdet är en referens till en fil med namnet på tjänsten följt av .conf. Till exempel kan vi använda

 /etc/fail2ban/filter.d/sshd.conf.
Syntaxen som ska användas är:
 filter = service
När vi lägger till fängelser kan vi använda Fail2ban -klienten för att se vilka som är aktiva på servern, för detta utför vi följande:
 fail2ban-klientstatus
Där kommer de att distribueras när vi skapar dessa begränsningar.

Vi kan se hur Fail2ban är ett praktiskt verktyg för att öka säkerheten i Linux -distributioner och undvika obehörig åtkomst och allt som rör dåliga metoder som utförs i organisationen.

Du kommer att bidra till utvecklingen av webbplatsen, dela sidan med dina vänner

wave wave wave wave wave