Namestite in konfigurirajte pfBlockerNg za črni seznam DNS v požarnem zidu pfSense


V prejšnjem članku smo razpravljali o namestitvi zmogljive rešitve požarnega zidu na osnovi FreeBSD, znane kot pfSense. pfSense, kot smo že omenili v prejšnjem članku, je zelo zmogljiva in prilagodljiva rešitev požarnega zidu, ki lahko izkoristi stari računalnik, ki se morda skriva in ne dela veliko.

V tem članku bomo govorili o čudovitem dodatnem paketu za pfsense, imenovanem pfBlockerNG.

pfBlockerNG je paket, ki ga je mogoče namestiti v pfSense, da skrbniku požarnega zidu omogoči razširitev zmogljivosti požarnega zidu preko običajnega požarnega zidu L2/L3/L4.

Ker zmogljivosti napadalcev in kiber kriminalcev še naprej napredujejo, se morajo tudi obrambe, ki so postavljene za preprečevanje njihovih prizadevanj. Kot pri vsem v računalniškem svetu tudi tukaj ni ene rešitve, ki bi popravila vse izdelke.

pfBlockerNG omogoča pfSense, da požarni zid lahko dovoli/zavrne elemente, ki temeljijo na odločitvah, kot so geolokacija IP naslova, ime domene vira ali ocene Alexa določenih spletnih mest.

Možnost omejevanja na elemente, kot so imena domen, je zelo ugodna, saj omogoča skrbnikom, da preprečijo poskuse notranjih računalnikov, ki se poskušajo povezati z znanimi slabimi domenami (z drugimi besedami, za domene, za katere je znano, da vsebujejo zlonamerno programsko opremo, nezakonito vsebino ali drugo zahrbtni podatki).

Ta vodnik bo opisal konfiguracijo požarnega zidu pfSense za uporabo paketa pfBlockerNG in nekaj osnovnih primerov seznamov blokov domen, ki jih je mogoče dodati/konfigurirati v orodje pfBlockerNG.

V tem članku bo nekaj predpostavk in bo nadgrajeno iz prejšnjega članka o namestitvi o pfSense. Predpostavke bodo naslednje:

  • pfSense je že nameščen in nima trenutno konfiguriranih pravil (čista skrilavca).
  • Požarni zid ima samo vrata WAN in LAN (2 vrati).
  • Shema IP, ki se uporablja na strani LAN, je 192.168.0.0/24.

Treba je opozoriti, da je pfBlockerNG mogoče konfigurirati na že zagnanem/konfiguriranem požarnem zidu pfSense. Razlog za te predpostavke je zgolj zaradi zdrave pameti in številne naloge, ki se bodo dokončale, je še vedno mogoče izvesti na nečisti škatli pfSense.

Spodnja slika je laboratorijski diagram za okolje pfSense, ki bo uporabljen v tem članku.

Namestite pfBlockerNG za pfSense

Ko je laboratorij pripravljen za delo, je čas, da začnemo! Prvi korak je povezava s spletnim vmesnikom požarnega zidu pfSense. Tudi to laboratorijsko okolje uporablja omrežje 192.168.0.0/24, požarni zid pa deluje kot prehod z naslovom 192.168.0.1. Z uporabo spletnega brskalnika in krmarjenjem do „https://192.168.0.1“ se prikaže stran za prijavo pfSense.

Nekateri brskalniki se lahko pritožijo nad potrdilom SSL, kar je običajno, ker je potrdilo samopodpisano s požarnim zidom pfSense. Lahko varno sprejmete opozorilno sporočilo in po želji lahko namestite veljavno potrdilo, podpisano z legitimnim overiteljem, vendar to presega področje uporabe tega članka.

Po uspešnem kliku na »Napredno« in nato na »Dodaj izjemo…« kliknite, da potrdite varnostno izjemo. Nato se bo prikazala stran za prijavo pfSense in omogočila skrbniku, da se prijavi v napravo požarnega zidu.

Ko se prijavite na glavno stran pfSense, kliknite spustni meni 'Sistem' in izberite 'Upravitelj paketov'.

S klikom na to povezavo se bo spremenilo okno upravitelja paketov. Prva stran, ki jo je treba naložiti, bodo vsi trenutno nameščeni paketi in bo prazna (spet ta priročnik predvideva čisto namestitev pfSense). Kliknite besedilo „Razpoložljivi paketi“, da dobite seznam namestljivih paketov za pfSense.

Ko se stran »Razpoložljivi paketi« naloži, v polje »Iskalni izraz« vnesite »pfblocker« in kliknite »Išči«. Prvi element, ki se vrne, mora biti pfBlockerNG. Poiščite gumb ‘Namesti’ na desni strani opisa pfBlockerNG in kliknite ‘+’ , da namestite paket.

Stran se bo znova naložila in zahtevala, da skrbnik potrdi namestitev s klikom na »Potrdi«.

Po potrditvi bo pfSense začel nameščati pfBlockerNG. Ne odmikajte se strani namestitvenega programa! Počakajte, da se na strani prikaže uspešna namestitev.

Po končani namestitvi se lahko začne konfiguracija pfBlockerNG. Prva naloga, ki jo je treba dokončati, pa je nekaj pojasnil o tem, kaj se bo zgodilo, ko bo pfBlockerNG pravilno konfiguriran.

Ko je pfBlockerNG konfiguriran, naj zahteve DNS za spletna mesta prestreže požarni zid pfSense, ki izvaja programsko opremo pfBlockerNG. Nato bo imel pfBlockerNG posodobljene sezname znanih slabih domen, ki so preslikane na slab naslov IP.

Požarni zid pfSense mora prestreči zahteve DNS, da bo lahko filtriral slabe domene in bo uporabil lokalni razreševalnik DNS, znan kot UnBound. To pomeni, da morajo odjemalci v vmesniku LAN uporabljati požarni zid pfSense kot razreševalnik DNS.

Če odjemalec zahteva domeno, ki je na blokiranih seznamih pfBlockerNG, bo pfBlockerNG vrnil napačen ip naslov za domeno. Začnimo postopek!

Konfiguracija pfBlockerNG za pfSense

Prvi korak je omogočiti ločevalnik Unbound DNS na požarnem zidu pfSense. Če želite to narediti, kliknite spustni meni 'Storitve' in nato izberite 'DNS Resolver'.

Ko se stran znova naloži, bodo nastavljive splošne nastavitve razreševalnika DNS. Ta prva možnost, ki jo je treba konfigurirati, je potrditveno polje »Omogoči razreševalnik DNS«.

Naslednje nastavitve so nastavitev vrat za poslušanje DNS (običajno vrata 53), nastavitev omrežnih vmesnikov, na katere naj posluša razreševalnik DNS (v tej konfiguraciji bi to morala biti vrata LAN in Localhost), in nato nastavitev izhodnih vrat ( biti WAN v tej konfiguraciji).

Ko so izbori opravljeni, kliknite »Shrani« na dnu strani in nato kliknite gumb »Uporabi spremembe«, ki se prikaže na vrhu strani.

Naslednji korak je prvi korak pri konfiguraciji pfBlockerNG posebej. Pojdite na stran za konfiguracijo pfBlockerNG v meniju »Požarni zid« in nato kliknite na »pfBlockerNG«.

Ko se pfBlockerNG naloži, najprej kliknite zavihek „DNSBL“, da začnete z nastavitvijo seznamov DNS, preden aktivirate pfBlockerNG.

Ko se naloži stran ‘DNSBL’, bo pod meniji pfBlockerNG nov nabor menijev (spodaj označeno z zeleno). Prvi element, ki ga je treba obravnavati, je potrditveno polje »Omogoči DNSBL« (spodaj označeno z zeleno).

To potrditveno polje bo zahtevalo uporabo ločevalnika Unbound DNS v polju pfSense za pregledovanje zahtev dns od odjemalcev LAN. Ne skrbite, UnBound je bil konfiguriran prej, vendar bo to polje treba potrditi! Drugi element, ki ga je treba izpolniti na tem zaslonu, je »DNSBL Virtual IP«.

Ta IP mora biti v območju zasebnega omrežja in ne veljaven IP v omrežju, v katerem se uporablja pfSense. Na primer, omrežje LAN na 192.168.0.0/24 lahko uporablja IP 10.0.0.1, ker je zasebni IP in ni del omrežja LAN.

Ta IP bo uporabljen za zbiranje statističnih podatkov in spremljanje domen, ki jih pfBlockerNG zavrne.

Če se pomaknete po strani, je treba omeniti še nekaj nastavitev. Prvi je 'vmesnik za poslušanje DNSBL'. Za to nastavitev in večino nastavitev mora biti ta nastavitev nastavljena na 'LAN'.

Druga nastavitev je 'Seznam dejanj' v 'Nastavitve požarnega zidu DNSBL IP'. Ta nastavitev določa, kaj naj se zgodi, ko vir DNSBL zagotavlja naslove IP.

Pravila pfBlockerNG lahko nastavite na poljubno število dejanj, vendar bo najverjetneje želena možnost 'Zavrni oboje'. To bo preprečilo vhodne in odhodne povezave z IP/domeno v viru DNSBL.

Ko so elementi izbrani, se pomaknite na dno strani in kliknite gumb »Shrani«. Ko se stran znova naloži, je čas, da konfigurirate sezname blokov DNS, ki jih je treba uporabiti.

pfBlockerNG skrbniku ponuja dve možnosti, ki ju je mogoče konfigurirati samostojno ali skupaj, odvisno od skrbnikove želje. Ti dve možnosti sta ročni vir z drugih spletnih strani ali EasyLists.

Če želite izvedeti več o različnih EasyLists, obiščite domačo stran projekta: https://easylist.to/

Konfigurirajte pfBlockerNG EasyList

Najprej se pogovorimo in konfigurirajte EasyLists. Večina domačih uporabnikov bo te sezname zadostovala in bo tudi administrativno najtežja.

Dva seznama EasyList, ki sta na voljo v pfBlockerNG, sta „EasyList brez skrivanja elementov“ in „EasyPrivacy“. Če želite uporabiti enega od teh seznamov, najprej kliknite »DNSBL EasyList« na vrhu strani.

Ko se stran znova naloži, bo na voljo razdelek za konfiguracijo EasyList. Konfigurirati bo treba naslednje nastavitve:

  • Ime skupine DNS - uporabnikova izbira, vendar brez posebnih znakov
  • Opis - uporabnikova izbira, dovoljeni so posebni znaki
  • Stanje virov EasyList - ali se uporablja konfiguriran seznam
  • Feed EasyList - Kateri seznam uporabiti (EasyList ali EasyPrivacy) je mogoče dodati oba
  • Glava/nalepka - izbira uporabnika, vendar brez posebnih znakov

Naslednji odsek se uporablja za določanje, kateri deli seznamov bodo blokirani. Vse to so vse nastavitve uporabnika in po želji jih lahko izberete več. Pomembne nastavitve v "DNSBL - Nastavitve EasyList" so naslednje:

  • Kategorije - izberejo se lahko uporabniške nastavitve in več uporabnikov
  • Dejanje seznama - za pregledovanje zahtev DNS mora biti nastavljeno na »Brez obvez«
  • Pogostost posodabljanja - kako pogosto bo pfSense posodabljal seznam slabih spletnih mest

Ko so nastavitve EasyList nastavljene na uporabnikove nastavitve, se pomaknite na dno strani in kliknite gumb »Shrani«. Ko se stran znova naloži, se pomaknite na vrh strani in kliknite zavihek ‘Posodobi’.

Na zavihku posodobitve preverite izbirni gumb za »Ponovno naloži« in nato izbirni gumb za »Vse«. To bo potekalo skozi vrsto spletnih prenosov za pridobitev seznamov blokov, izbranih na konfiguracijski strani EasyList prej.

To je treba storiti ročno, sicer se seznami ne bodo prenesli do načrtovane naloge cron. Kadar koli se spremenijo (seznami dodajo ali odstranijo), obvezno zaženite ta korak.

Pazite na spodnje okno dnevnika za morebitne napake. Če bi šlo vse po načrtih, bi morali odjemalski stroji na strani požarnega zidu LAN imeti možnost poizvedovati po požarnem zidu pfSense za znana slaba spletna mesta in v zameno prejemati slabe naslove ip. Spet morajo biti odjemalski stroji nastavljeni tako, da uporabljajo polje pfsense kot razreševalnik DNS!

V zgornjem nslookupu opazite, da URL vrne lažni IP, konfiguriran prej v konfiguracijah pfBlockerNG. To je želeni rezultat. To bi povzročilo, da bi bila vsaka zahteva, da se URL »100pour.com« usmeri na napačni naslov IP 10.0.0.1

Konfigurirajte DNSBL vire za pfSense

V nasprotju s seznami AdBlock EasyLists obstaja možnost uporabe drugih črnih seznamov DNS znotraj pfBlockerNG. Obstaja na stotine seznamov, ki se uporabljajo za sledenje ukazom in nadzoru zlonamerne programske opreme, vohunske programske opreme, oglaševalske programske opreme, tor vozlišč in vseh vrst drugih uporabnih seznamov.

Te sezname lahko pogosto povlečete v pfBlockerNG in jih uporabite tudi kot nadaljnje črne sezname DNS. Kar nekaj virov ponuja koristne sezname:

  • https://forum.pfsense.org/index.php?topic=114499.0
  • https://forum.pfsense.org/index.php?topic=102470.0
  • https://forum.pfsense.org/index.php?topic=86212.0

Zgornje povezave ponujajo niti na forumu pfSense, kjer so člani objavili veliko zbirko seznamov, ki jih uporabljajo. Nekateri avtorjevi najljubši seznami vključujejo naslednje:

  • http://adaway.org/hosts.txt
  • http://www.malwaredomainlist.com/hostslist/hosts.txt
  • http://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts&mimetype=plaintext
  • https://zeustracker.abuse.ch/blocklist.php?download=domainblocklist
  • https://gist.githubusercontent.com/BBcan177/4a8bf37c131be4803cb2/raw

Spet je na tone drugih seznamov in avtor močno spodbuja, da posamezniki iščejo več/druge sezname. Nadaljujmo s konfiguracijskimi nalogami.

Prvi korak je, da znova vstopite v konfiguracijski meni pfBlockerNG prek 'Požarni zid' -> 'pfBlockerNG' -> 'DSNBL'.

Na strani za konfiguracijo DNSBL znova kliknite besedilo »DNSBL Viri« in nato kliknite gumb »Dodaj«, ko se stran osveži.

Gumb za dodajanje bo skrbniku omogočil, da v programsko opremo pfBlockerNG doda več seznamov slabih naslovov IP ali imen DNS (dva elementa na seznamu sta avtorjeva s testiranja). Gumb za dodajanje pripelje skrbnika na stran, kjer je mogoče v požarni zid dodati sezname DNSBL.

Pomembne nastavitve v tem izhodu so naslednje:

  • Ime skupine DNS - izbrani uporabnik
  • Opis - koristno za organiziranje skupin
  • Nastavitve DNSBL - to so dejanski seznami
    • Stanje - ali se ta vir uporablja ali ne in kako je pridobljen
    • Vir - povezava/vir črnega seznama DNS
    • Glava/nalepka - izbira uporabnika; brez posebnih znakov

    Ko so te nastavitve nastavljene, kliknite gumb za shranjevanje na dnu strani. Kot pri vseh spremembah pfBlockerNG bodo spremembe začele veljati z naslednjim načrtovanim intervalom cron ali pa bo skrbnik lahko ročno prisilil ponovno nalaganje tako, da se je pomaknil do zavihka »Posodobi«, kliknil izbirni gumb »Ponovno naloži« in nato še »Vse«. radijski gumb. Ko so izbrane, kliknite gumb »Zaženi«.

    Pazite na spodnje okno dnevnika za morebitne napake. Če je šlo vse po načrtih, preverite, ali seznami delujejo, tako da preprosto poskusite narediti nslookup od odjemalca na strani lan do ene od domen, navedenih v eni od besedilnih datotek, uporabljenih v konfiguraciji DNSBL.

    Kot je razvidno iz zgornjega izhoda, naprava pfSense vrača navidezni naslov IP, ki je bil konfiguriran v pfBlockerNG kot slab IP za domene črnega seznama.

    Na tej točki lahko skrbnik nadaljuje nastavitev seznamov z dodajanjem več seznamov ali ustvarjanjem seznamov domen/IP po meri. pfBlockerNG bo še naprej preusmerjal te omejene domene na lažni naslov IP.

    Hvala, ker ste prebrali ta članek o pfBlockerNG. Pokažite svojo zahvalo ali podporo programski opremi pfSense in pfBlockerNG, tako da kakor koli prispevate k nadaljnjemu razvoju obeh čudovitih izdelkov. Kot vedno prosimo, da spodaj komentirate s kakršnimi koli predlogi ali vprašanji!