Kako instalirati Fail2ban na Ubuntu 20.04 s konfiguracijom

Danas ćemo pogledati kako možete instalirati Fail2ban na Ubuntu 20.04 LTS Focal, koji će zaštititi vaše poslužitelje od zlonamjernih napada loših botova i hakera. Oni koji nisu upoznati s Fail2ban je softverski okvir za sprječavanje upada koji štiti računalne poslužitelje od prvenstveno brute-force napada i zabrane loših korisničkih agenata, zabrane URL skenera i još mnogo toga. Fail2ban to postiže čitanjem dnevnika pristupa/pogreške vašeg poslužitelja ili web aplikacija. Fail2ban je kodiran u programskom jeziku python.

U vodiču ćemo dati sažetak o instalaciji Fail2ban na Ubuntu 20.04 i neke osnovne postavke i savjete. Vodič je kompatibilan i s Ubuntu 21.04.

Instalirajte Fail2ban

Ubuntu spremišta dolaze s Fail2ban. Trebat će vam sudo privilegije da biste ga instalirali pomoću sljedećih naredbi.

sudo apt update && sudo apt upgrade -y

Zatim instalirajte Fail2ban izvršavanjem sljedeće naredbe:

sudo apt install fail2ban
fail2ban apt instalacija da

Tip "Y" instalirati.

Nakon što završite s instaliranjem Fail2ban-a, moramo provjeriti njegov status usluge. Prema zadanim postavkama, kada instalirate Fail2ban, trebao bi biti automatski omogućen i pokrenut. Koristite sljedeću naredbu da vidite.

sudo systemctl status fail2ban
fail2ban sustav u redu

Trebali biste vidjeti status ok u zelenoj boji kao na gornjoj slici. Ako se iz nekog razloga ne pokrene i ne omogući pokretanje pri učitavanju sustava, upotrijebite sljedeće naredbe.

sudo systemctl start fail2ban && sudo systemctl enable fail2ban

Da biste zaustavili i onemogućili Fail2ban u budućnosti, to možete učiniti upisivanjem sljedeće naredbe:

sudo systemctl stop fail2ban && sudo systemctl disable fail2ban

Oglas


Postavite Fail2ban konfiguracijske datoteke

Nakon završetka instalacije, sada moramo napraviti neke postavke i osnovnu konfiguraciju. Fail2ban dolazi s dvije konfiguracijske datoteke koje se nalaze u /etc/fail2ban/jail.conf i Zadani Fail2ban /etc/fail2ban/jail.d/defaults-debian.conf. Nemojte mijenjati ove datoteke. Izvorne datoteke za postavljanje su vaši originali i bit će zamijenjene u svakom ažuriranju Fail2ban u budućnosti.

Sada se možda pitate kako postavljamo Fail2ban kao da ažurirate i izgubit ćete svoje postavke. Jednostavno, stvaramo kopije koje završavaju na .lokalno umjesto .konf kao što će Fail2ban uvijek čitati .lokalno datoteke prije učitavanja .konf ako ga ne može pronaći.

Da biste to učinili, koristite sljedeće naredbe.

sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
fail2ban kopija dovršena

Konfigurirajte Fail2ban

Sada dolazite do dijela gdje možete otvoriti zatvor.lokalno i prilagodite postavke pomoću nano editora.

sudo nano /etc/fail2ban/jail.local

Oglas


Povećanje vremena zabrane

Prve postavke na koje ćete naići jesu zabrana vremena. Trebali biste to omogućiti svaki put kada se napadač vrati. To će povećati vrijeme zabrane, čime se vaš sustav štedi od stalnog ponovnog zabranjivanja istog IP-a ako je vrijeme zabrane malo; na primjer, 1 sat, željeli biste da ovo bude duže ako se napadač vrati x5 puta.

Također morate postaviti množitelj ili faktor da bi logika povećanja zabrane funkcionirala. Možete odabrati bilo koji od ovih; međutim, u našem vodiču preferiramo množitelje, kao što je istaknuto u našem primjeru u nastavku, budući da možete podesiti prilagođena povećanja vremena zabrane po svom ukusu. Daljnje objašnjenje nalazi se u postavkama matematike iza toga.

fail2ban množitelji

Bijela lista IP-ova u Fail2ban

Sljedeći na popisu, nailazimo na opcije stavljanja na popis dopuštenih, dekomentirajte sljedeće i adresirajte sve IP adrese koje želite staviti na popis dopuštenih.

ignoreip = 127.0.0.1/8 ::1 180.53.31.33 (example IP address)

Pazite na razmak ili zarez između IP adresa. Također možete staviti na bijelu listu IP raspona.

bijela lista ip fail2ban

Oglas


Zadano postavljanje vremena zabrane

Zadane postavke vremena zabrane su zadane 10 minuta s 10 minuta tražila na 5 pokušaja. Objašnjenje ovoga je Fail2ban zatvor s filtriranjem zabranit će vašem napadaču 10 minuta nakon što je pokušao isti napad za 10 minuta (pronađi vrijeme) x 5 puta (ponovni pokušaji). Ovdje možete postaviti neke zadane postavke zabrane.

Međutim, kada dođete u zatvor, savjetuje se da postavite različita vremena zabrane, jer bi neke zabrane automatski trebale biti dulje od drugih, uključujući ponovne pokušaje koji bi trebali biti manji ili više.

fail2ban zadano vrijeme zabrane

E-mail postavljen s Fail2ban

Možete postaviti adresu e-pošte za Fail2ban za slanje izvješća. Zadana radnja = %(action_mw)s koja zabranjuje uvredljivu IP adresu i šalje e-mail s Whois izvješćem da ga pregledate. Međutim, u vašoj mapi action.d postoje druge opcije e-pošte za prijavljivanje ne samo sebi, već i slanje e-pošte dobavljačima s crne liste i napadačevom ISP-u da prijave.

Primjer postavljanja u nastavku:

# Destination email address used solely for the interpolations in
# jail.{conf,local,d/*} configuration files.
destemail = admin@example.com

# Sender e-mail address used solely for some actions
sender = fail2ban@example.com
fail2ban postavke e-pošte

Oglas


Fail2ban zatvori

Zatim dolazimo do zatvora. Možete postaviti unaprijed definirane zatvore s filterima i radnjama koje je stvorila zajednica koja pokriva mnoge popularne poslužiteljske aplikacije. Možete napraviti prilagođene zatvore ili pronaći vanjske na raznim suštinama i web stranicama zajednice; međutim, mi ćemo postaviti zadane zatvarače Fail2ban paketa.

Zadano postavljeno za sve zatvore kao na slici ispod. Primijetite kako ništa nije omogućeno.

postavke zatvora

Dakle, imamo Apache 2 HTTP poslužitelj, i kao filtriranje/zabrana loših botova, sve što trebate učiniti je dodati enabled = true kao u primjeru ispod.

[apache-badbots]
# Ban hosts which agent identifies spammer robots crawling the web
# for email addresses. The mail outputs are buffered.
enabled = true
port     = http,https
logpath  = %(apache_access_log)s
bantime  = 48h
maxretry = 1

Primijetite kako je maksimalni ponovni pokušaj jednak 1, a vrijeme zabrane 48 sati. Ovo je individualna postavka maksimalnog ponovnog pokušaja i duljine zabrane za ovaj zatvor koji će se automatski povećati s množiteljem zabrane koje smo postavili ranije u vodiču. Ako nekom od filtara ovo nedostaje, možete ga dodati kao primjer.

[apache-noscript]
enabled = true
port     = http,https
logpath  = %(apache_error_log)s

Promijenite iznad sljedećeg primjera u nastavku:

[apache-noscript]
enabled = true
port     = http,https
logpath  = %(apache_error_log)s
bantime = 1d
maxretry = 3

Zatim biste željeli imati različite radnje od onih koje su navedene u zadanim postavkama u /etc/fail2ban/jail.local, dodatne radnje možete pronaći u direktoriju action.d. Različite radnje iz ovog direktorija mogu se jednostavno postaviti slijedeći upute unutar tih redova konfiguracije radnji u datotekama, ne zaboravite ih prvo preimenovati u .jail preko .conf, a zatim dodati sljedeće u svoje jail postavke.

[apache-botsearch]
enabled = true
port     = http,https
logpath  = %(apache_error_log)s
banaction = action_mw
            cloudflare
bantime = 72h
maxretry = 1

Kao što vidite, dodali smo action_mw, tako da se automatski zabranjuje prema našoj zadanoj radnji i šalje nam izvješće e-poštom s whois-om, a zatim sljedeća radnja, ako koristite Cloudflare, blokirat će i IP adresu na usluzi. Zapamtite, Cloudflare je potrebno postaviti prije upotrebe. Pročitajte datoteku action.d cloudflare.conf.

Nakon što ste zadovoljni svojim postavljanjem, napravite sljedeću naredbu da ponovno pokrenete fail2ban kako biste učitali svoje nove zatvore.

sudo systemctl restart fail2ban

Upjevati Fail2ban-client

Sada kada ste pokrenuli s Fail2ban-om, morate znati neke osnovne naredbe za rad. To radimo pomoću naredbe fail2ban-client. Možda ćete trebati imati sudo privilegije, ovisno o vašim postavkama.

Zabranite IP adresu:

sudo fail2ban-client set apache-botsearch banip <ip address>

Poništi zabranu IP adrese:

sudo fail2ban-client set apache-botsearch unbanip <ip address>

Naredba za otvaranje izbornika pomoći ako trebate pronaći dodatne postavke ili dobiti pomoć za određenu.

sudo fail2ban-client -h 

Oglas


Nadgledanje zapisnika Fail2ban

Uobičajena pogreška mnogih je postavljanje zatvora i odlazak bez testiranja ili praćenja onoga što rade. Pregledavanje dnevnika je bitno, a zapisnik fail2ban nalazi se na zadanoj putanji /var/log/fail2ban.log.

Ako imate poslužitelj koji prima pristojan promet, izvrsna naredba za gledanje uživo kako biste odmah vidjeli ima li problema i pazili na to dok radite na drugim poslužiteljima je korištenje naredbe tail -f prema dolje.

sudo tail -f /var/log/fail2ban.log

Naredba može biti korisna za provjeru na licu mjesta bez potrebe za uranjanjem u prijavu.

Komentari i zaključak

Stvoreni vodič pokazao vam je osnove instaliranja Fail2bana na sustav Ubuntu 20.04 i postavljanja nekih zatvora s dostupnim filterima. Fail2ban je moćan alat. Možete ga postaviti na mnogo različitih načina od onoga što sam ovdje prikazao. To je samo primjer kako se možete snaći, za početak. Fail2ban se aktivno razvija i dobar je izbor za implementaciju na vašem poslužitelju u ovim vremenima kada napadi postaju tako česti.

Pretplati me
Obavijesti o
0 Komentari
Umetne povratne informacije
Pogledajte sve komentare
0
Volio bih vaše misli, molim vas komentirajte.x