Published on

Reklámblokkoló a gyakorlatban

Authors
  • avatar
    Name
    Bartók Dániel
    Twitter

A legutóbbi alapozó bejegyzésben megnéztük, hogyan működnek a SPAM szűrők. Kísérteties hasonlóságot figyelhetünk meg a reklámokkal. A levélszeméttel karöltve ugyanolyan idegesítőek tudnak lenni, a veszélyességükről nem is beszélve. Továbbá a hirdetésblokkolók mögötti működési elv is nagyon hasonlatos az előző alkalommal bemutatott szűrőkhöz.

A haladó bejegyzés megértéséhez szükséges előképzettség:

Az alábbi bejegyzés ismerete:

Unix eszközök:

  • Terminál

  • SSH

  • Konténert futtató alkalmazás (pl. Docker)

A bemutatott megoldásban használt eszköz:

A bemutatott eszközök:

Hirdetésblokkolók működése

Egy videó vagy kép megjelenítéséhez először a böngészőnek az adott tartalmat le kell töltenie. Ehhez egy kérést indítványoz a szerver irányába. Ilyenkor jutnak szóhoz a reklámblokkolók. Működésük közben szűrőket használnak (ahogy a SPAM esetén is megtudtuk), ez lényegében egy nagy lista különféle szabályokkal. A program a szűrők alapján megállapítja, mely tartalmakat kell blokkolni és melyeket kell megjeleníteni az éppen meglátogatott weboldalon. Minden egyes kérést ellenőriznek, és amelyik címe szerepel a listában, mint hirdetés, azokat kiszűrik és így nem fog megjelenni reklám.

Számos blokkoló "csak" a hirdetéseket veszi célba. Viszont léteznek olyanok, köztük az AdGuard is, amelyek ezen felül a nyomkövető rendszereket is blokkolják. Ezek weboldalba vagy alkalmazásba épített analitikai eszközök, amelyek egyedüli szándéka, hogy adatokat gyűjtsön az oda látogatóról. Egy jó hirdetésblokkoló ismérve, hogy gyorsabban betölti az oldalakat, biztonságban tartja a személyes adatokat, laptop, telefon esetén meghosszabbítja az akkumulátor élettartamát és mindezek mellett természetesen blokkolja a hirdetéseket is.

Miért pont az Adguard Home?

Ahogy a bevezetőben is említettem, számos hirdetésblokkoló program létezik a piacon. Ezek nagy részét az adott eszközre szükséges telepíteni külön alkalmazásként vagy éppen egy internet böngésző bővítményeként. Ezen típusok előnye, hogy könnyen telepíthetők és használhatók, viszont mindig csak az adott készüléken fog működni. Tehát ha van a háztartásunkban 3 telefon, 2 laptop és egy asztali számítógép, akkor az összes eszközre, külön-külön telepítenünk és konfigurálnunk kell. Én éppen ezért használom az AdGuard Home-ot, melynek nagy előnye, hogy teljes hálózatot lefedő megoldást biztosít (igazából DNS szerver) a hirdetések és a nyomkövető rendszerek ellen.

Böngészési élmény reklámokkal

Ez a gyakorlatban azt jelenti, hogy elég egy eszközre feltelepíteni és beállítani, onnantól kezdve bármilyen eszközzel is csatlakozunk az otthoni hálózatunkra, minden forgalom meg lesz szűrve. Ráadásul teljesen magyar nyelvű. Két "hátrányt" tudok felhozni ellene, az egyik, hogy a programnak éjjel-nappal futnia kell, így ehhez szükségünk lesz erre a célra használható eszközre is. Erre a megoldás lehet egy NAS vagy egy mini PC. A másik pedig, hogy a telepítéshez és konfiguráláshoz bővebb informatikai ismeretekkel kell rendelkeznünk.

Ne aggódj az utóbbival a segítségedre leszek, a következőkben végig vezetlek a lépéseken. Előre egy reklámmentes és biztonságos böngészési élményért!

Böngészési élmény reklámok nélkül

Telepítés

Ahogy fentebb is írtam szükségünk lesz egy olyan eszközre, amely a nap 24 órájában fut, a legolcsóbb megoldás egy mini PC beszerzése, de ha esetleg van otthon NAS szerverünk, a legtöbb esetben azt is felhasználhatjuk. Én az előbbit választottam és pár éve beszereztem egy Raspberry Pi 4 Model B-t.

Magát az alkalmazást legegyszerűbben egy Docker image1 képében telepíthetjük. Ehhez szükségünk lesz konténert futtató alkalmazásra, amit az alábbi parancsokkal tudjuk telepíteni.

Nyissunk meg egy terminált, csatlakozzunk be az adott eszközre (ssh), majd adjuk ki a következő parancsokat:

# Rendszer frissítése az apt csomagkezelővel
sudo apt update
sudo apt upgrade

# Docker telepítő beszerzése és telepítése
curl -sSL https://get.docker.com | sh

# Saját felhasználónk jogosítása, hogy tudjon docker parancsokat használni
sudo usermod -aG docker $USER

# A módosítások érvénybe lépéséhez jelentkezzünk ki, majd be
logout

Most már rendelkezésre áll a futtató környezet, viszont szükség van még két könyvtárra, amelyben az alkalmazás adatokat és a konfigurációt tároljuk. Hozzunk létre két tetszőleges könyvtárat, amit majd a lenti parancsban is meg kell adnunk. Szeretem szervezetten tárolni az adataimat, így én a /home/apps/adguardhome alatt hoztam létre két könyvtárat data és conf néven.

# Két könyvtár létrehozása az alkalmazás adatainak és beállításainak
mkdir  -p /home/apps/adguardhome/conf  /home/apps/adguardhome/data 

Természetesen tetszőleges helyen is létrehozhatjuk ezeket, viszont fontos, hogy a lenti parancsban is majd ezt adjuk meg. A parancs létrehoz egy adguardhome nevű konténert, megadja az előbb létrehozott két könyvtárat használatra, majd számos port-ot elérhetővé tesz a hálózatunkon.

# AdGuard Home alkalmazás elindítása
docker run --name adguardhome\
    --restart unless-stopped\
    -v /home/apps/adguardhome/conf:/opt/adguardhome/work\
    -v /home/apps/adguardhome/data :/opt/adguardhome/conf\
    -p 53:53/tcp -p 53:53/udp\
    -p 80:80/tcp -p 443:443/tcp -p 443:443/udp -p 3000:3000/tcp -p 8080:8080/tcp \
    -d adguard/adguardhome

Ezek után az alábbi paranccsal tudjuk ellenőrizni, hogy sikeresen elindult-e a program. A STATUS oszlopban azt kell látnunk, hogy UP x minutes.

docker ps
CONTAINER ID   IMAGE                          COMMAND                  CREATED        STATUS          PORTS     NAMES
1837f784d710   adguard/adguardhome:v0.107.52  "/opt/adguardhome/Ad…"   5 months ago   Up 21 minutes    xxx      adguard-home

Ezek után nézzük meg a mini PC IP címét, ezen elérhetjük a telepítés varázsló grafikus felületét a 3000-es port-on:

# Nézzük meg az eszköz IP címét
hostname -I
192.168.31.247 ...

http://<eszköz-címe>:3000/

Telepítés varázsló

A telepítés befejezéséhez menjünk végig az 5 lépésből álló telepítés varázslón.

Az első lépésben kapunk egy összegzést a program céljáról és működéséről, olvassuk el majd kattintsunk a Kezdés gombra.

AdGuard Home telepítési folyamat

A következő oldalon megadhatjuk innentől milyen címen szeretnénk elérni a webes admin felületet, illetve a DNS szervert. Én itt egyedül a webes admin felület portját írtam át 8080-ra. Amennyiben ezzel megvagyunk, kattintsunk a Következő gombra.

Webes admin felület és DNS szerver beállítása

Ezután létre kell hoznunk egy új felhasználót, a megadott adatokkal tudunk majd belépni a webes felületre.

Új felhasználó létrehozása

A telepítés befejezéséhez már csak az eszközeinket kell beállítani, hogy ki is használják az Adguard-ot. Ehhez érdemes a routert konfigurálni, hiszen ez kihat az összes olyan eszközre, amelyek ehhez a routerhez kapcsolódnak, így nem szükséges őket egyenként, kézileg beállítani. Viszont ezt a lépést a telepítési folyamat végére hagynám, először fejezzük ezt be, így kattintsunk a Következő gombra.

Eszközök beállításai

Ezzel a telepítési folyamat végéhez értünk, bizonyosodjunk meg róla, hogy elérjük a grafikus felületet az új címen http://<eszköz-címe>:8080/ és be is tudunk jelentkezni a beállított felhasználónév és jelszó használatával.

Bejelentkezés a webes felületen

Router DNS beállítása

Elérkeztünk - szerintem - a legnehezebb lépéshez, a router beállításához. Ahogy már említettem az Adguard Home lényegében egy DNS szerver, ezt kell most megadnunk a routerben. Így biztosíthatjuk. hogy minden kérés rajta keresztül folyik, ezért is tud ennyire hatékony lenni.

Mivel minden router webes felülete eltér, ezért nagy valószínűséggel Neked picit máshol lesznek az alább bemutatott menüpontok, viszont az esetek nagyon-nagy részében ezeket meg lehet találni egy kis utána járással. Ha elakadnál keress bátran valamelyik elérhetőségemen keresztül és szívesen segítek. A lenti lépéseket egy Xiaomi routeren végeztem.

  1. Nyissuk meg a router beállításait. Ehhez írjuk be a címét a böngészőbe. (Általában 192.168.0.1 vagy 192.168.1.1, de ettől eltérő is lehet.) Az oldal valószínűleg felhasználónevet és jelszót fog kérni. Ha nem tudjuk a belépési adatokat akkor a router alján érdemes kezdeni a kutakodást vagy az interneten. Szolgáltatói eszköz esetén még az ügyfélszolgálat is szóba jöhet.
Router beállítások
  1. Keressük meg a DNS beállításokat. Ez általában a DHCP/DNS menüpontok alatt szokott lenni. Az én esetemben a Settings/Network settings menüpontot kellett kiválasztani, majd adjuk meg az AdGuard Home szerver címét. Fontos, hogy itt a DNS szerver címét kell megadnunk, nem pedig a webes felületét. Amennyiben a telepítési folyamatnál ezt nem írtuk át, itt elegendő megadni az IP címet, egyébként a megadott port-ot is szükséges.
DNS beállítások
  1. Indítsuk újra a routert, így minden eszköz kénytelen újra csatlakozni és a már módosított beállításokat fogják használni.

    Fontos!

    Azzal, hogy átállítottuk a DNS szervert, gondoskodnunk kell arról, hogy ez mindig elérhető legyen, egyébként nem fog működni a névfeloldási folyamat, kvázi olyan lesz mintha nem lenne internetünk. Ilyenkor a vészmegoldás mindig az, hogy visszaírjuk valamelyik nagy DNS szerver címét a routerben, ameddig rá nem jövünk hol a hiba.

    Google: 8.8.8.8

    Cloudflare: 1.1.1.1

Használat

Üdvözöllek a hirdetés és nyomkövetés nélküli világban! Igazából nincs más teendőd, mint ezt kiélvezni. Természetesen azt hozzá kell tenni, hogy nem nyújt 100%-os megoldást, hiszen például a YouTube reklámokat nem tudja blokkolni, ott olyan módszert alkalmaznak, amely megkerüli az AdGuard-ot. Viszont cserébe még az ingyenesen játszható telefonos játékokban is képes blokkolni a reklámokat. :)

Van azért néhány dolog, amit érdemes finomhangolni a saját preferenciánk szerint, ezeket a webes felületen tehetjük meg.

Az irányítópulton láthatunk egy összegzést. DNS lekérdezések, blokkolt tartalmak száma, legaktívabb kliensek, leglátogatottabb domainek, legtöbbet blokkolt domainek, top upstream szerverek, átlagos upstream válaszidő. Évek óta használom ezt a megoldást és átlagosan a felkeresett tartalmak 24 százaléka hirdetés vagy nyomkövető.

Irányítópult

A Beállítások/Általános beállítások menüpontban érdemes bekapcsolni az AdGuard böngészési biztonság és a szülői felügyelet webszolgáltatását. Így további nem biztonságosnak ítélt vagy felnőtt anyagokat tartalmazó weboldalakat is blokkolhatunk.

Beállítások finomhangolása

A Szűrők/DNS blokkolási listák menüpontban érdemes felvenni még egy szűrési listát, a még átfogóbb védelem érdekében.

Új blokkolási lista hozzáadása

Az eddigi finomhangolásokon túl, még lehetőségünk van kimondott szolgáltatások (Pl. Facebook, Netflix, OnlyFans, Youtube stb.) tiltására is a Szűrők/Blokkolt szolgáltatások menüpontban.

Különféle szolgáltatások blokkolása

Ez lenne tehát az AdGuard Home telepítése és használata lépésről-lépésre, én már évek óta használom néhány esettől eltekintve (YouTube) kifogástalanul végzi a dolgát.

Ti használtok valamilyen reklámblokkolót?

Írjátok meg!

Footnotes

  1. A teljes leírás megtalálható itt: https://hub.docker.com/r/adguard/adguardhome