Fail2ban

Fail2ban
Originalförfattare Cyril Jaquier
Initial release 7 oktober 2004 ; för 18 år sedan ( 2004-10-07 )
Stabil frisättning
1.0.1 / 27 september 2022 ; 4 månader sedan ( 2022-09-27 )
Förvar
Skrivet i Pytonorm
Plattform POSIX
Typ Förebyggande av intrång
Licens GNU GPL v2
Hemsida www .fail2ban .org  Edit this on Wikidata

Fail2ban är ett ramverk för intrångsförebyggande programvara. Den är skriven i Python och är utformad för att förhindra brute-force-attacker . Den kan köras på POSIX- system som har ett gränssnitt till ett paketkontrollsystem eller brandvägg installerad lokalt, såsom iptables eller TCP Wrapper .

Funktionalitet

En skärmdump av Fail2ban, som visar dess förmåga att förbjuda IP-adresser

Fail2ban fungerar genom att övervaka loggfiler (t.ex. /var/log/auth.log , /var/log/apache/access.log , etc.) för valda poster och köra skript baserat på dem. Oftast används detta för att blockera utvalda IP-adresser som kan tillhöra värdar som försöker bryta mot systemets säkerhet. Det kan förbjuda alla värd-IP-adresser som gör för många inloggningsförsök eller utför någon annan oönskad åtgärd inom en tidsram som definieras av administratören. Inkluderar stöd för både IPv4 och IPv6. Eventuellt längre förbud kan anpassas för "återfallsmissbrukare" som fortsätter att komma tillbaka. Fail2ban är vanligtvis inställd för att avbanna en blockerad värd inom en viss period, för att inte "låsa ut" några äkta anslutningar som kan ha blivit tillfälligt felkonfigurerade. En tid för avstängning på flera minuter räcker dock vanligtvis för att förhindra att en nätverksanslutning översvämmas av skadliga anslutningar, samt för att minska sannolikheten för en lyckad ordboksattack .

Fail2ban kan utföra flera åtgärder närhelst en felaktig IP-adress upptäcks: uppdatera Netfilter/iptables eller PF -brandväggsregler, TCP Wrappers hosts.deny - tabell, för att avvisa en missbrukares IP-adress; e-postmeddelanden; eller någon användardefinierad åtgärd som kan utföras av ett Python-skript.

Standardkonfigurationen levereras med filter för Apache , Lighttpd , sshd , vsftpd , qmail , Postfix och Courier Mail Server . Filter definieras av Python- regexes , som bekvämt kan anpassas av en administratör som är bekant med reguljära uttryck. En kombination av ett filter och en åtgärd kallas ett "fängelse" och är det som gör att en skadlig värd blockeras från att komma åt specifika nätverkstjänster. Förutom de exempel som distribueras med programvaran, kan ett "fängelse" skapas för alla nätverksvända processer som skapar en loggfil för åtkomst.

Fail2ban liknar DenyHosts [...] men till skillnad från DenyHosts som fokuserar på SSH kan fail2ban konfigureras för att övervaka vilken tjänst som helst som skriver inloggningsförsök till en loggfil, och istället för att använda /etc/hosts.deny endast för att blockera IP-adresser /hosts, fail2ban kan använda Netfilter/iptables och TCP Wrappers /etc/hosts.deny .

Falko Timme

Integrationer

Fail2ban kan integreras med många API:er , inklusive blocklist.de och AbuseIPDB.

Brister

  • Fail2ban misslyckas med att skydda mot en distribuerad brute-force attack. Emellertid finns det verktyg för att distribuera ban/unban-händelser mellan servrar som använder zmq.
  • Det finns ingen interaktion med applikationsspecifika API : er/AGI:er.

Se även

  • DenyHosts , ett loggbaserat säkerhetsverktyg för intrångsförebyggande
  • Stockade , en hastighetsbegränsande metod för att minska spam.
  • OSSEC , ett värdbaserat intrångsdetekteringssystem med öppen källkod.

externa länkar