Ako odstrániť inzeráty s Pixelserv na DD-WRT
Existuje mnoho spôsobov, ako zablokovať reklamy vo vašom prehliadači, ale čo keď ich môžete blokovať na smerovači? Tu je postup, ako používať firmvér DD-WRT a úmyselné "otravy DNS", aby ste zablokovali reklamy pre každé zariadenie v sieti.
Prehľad
aktualizovať: Sprievodca aktualizovaný tak, aby odrážal spätnú väzbu, ktorú poskytli komentátori, a aktualizoval balík antireklamov s novším spustiteľným súborom pixelového servera a changelogom.
Prvá otázka o mysli všetkých je práve teraz "prečo nie len používať reklamný blok?"
Pre veľa ľudí to jednoducho nie je dôvod, najmä s novou schopnosťou chrómu replikovať rozšírenia, ktoré používate na každý počítač, na ktorom bežíte chrome.
Odpoveď spočíva niekde medzi zníženou režijnou sadzbou, že nebudete musieť všetkým používateľom vo vašej sieti učiť ad-blok (hovorím s vami, mamou, sis, babičkou a kancelárskym tajomníkom) a pohodlie, že sa s tým nebudete obťažovať na každom počítači, ktorý nastavíte. Predpokladá sa, že v sieti budú niektoré počítače, na ktorých nebudete konfigurovať svoje osobné prostredie (napríklad "hlavné servery" alebo VM).
Poznámka: Aj keď používam nižšie uvedenú metódu na svojom domácom smerovači, našiel som ad-block, ktorý je výborným doplnkom k tomu, a odporúčam použiť obidve metódy v spojení. aj keď nemáte smerovač DD-WRT pomocou reklamného bloku, je to dosť. V skutočnosti sa mi tento program páči toľko, daroval som jej vývojárovi a povzbudzujem ho, aby to urobil,.
Ako to funguje?
V podstate to funguje zámerne otravou nášho DNS, aby sme vrátili konkrétnu adresu IP pre domény v neschválenom zozname. Tento neschválený zoznam bude obsahovať názvy domén stránok, ktoré sú zodpovedné výlučne za zobrazovanie reklamného obsahu, takže ich nebudeme chýbať.
Nastavíme sekundárny HTTP server na smerovači, aby sme zobrazili transparentný pixelový obrázok ako odpoveď na žiadosť o adresu URL. V spojení s nesprávnym riešením DNS to spôsobí, že klienti siete požiadajú o obsah nášho interného pixelového servera a získajú prázdny obrázok v reakcii.
Ak chcete vytvoriť nepovolený zoznam, vytvoríme jeden osobný zoznam v spojení s dvoma dynamicky stiahnutými zoznammi. dynamické zoznamy sú hostiteľský súbor MVPS a zoznam domén Yoyo, spolu obsahujú veľmi rozsiahly zoznam reklamných stránok. Využitím týchto zoznamov zostávame zodpovednosťou len pridanie delty stránok, ktoré ešte nie sú v jednom z nich, v našom osobnom zozname.
Takisto nastavíme "whitelist" pre domény, ktoré nechceme z akéhokoľvek dôvodu zablokovať.
Predpoklady a predpoklady
- Trpezlivosť mladá, toto je dlhé čítanie.
- Tento postup bol vytvorený a testovaný na DD-WRT (v24pre-sp2 10/12/10 mini r15437), ako taká by ste mali už túto verziu alebo novšiu inštaláciu na svojom smerovači použiť. Viac informácií prebehlo na lokalite DD-WRT.
- Pre zjednodušenie vysvetlení sa predpokladá, že smerovač bol obnovený na "továrenské predvolené nastavenia" alebo že použité nastavenia sa od svojich predvolených "predvolieb" nezmenili.
- Klientský počítač používa smerovač ako server DNS (to je predvolený).
- Priestor pre JFFS (ak máte pochybnosti, odporúčam použiť mini verzia DD-WRT).
- Predpokladá sa, že vaša sieť je * už nastavená a že je to trieda C (ktorá má subnet 255.255.255.0) ako poslednú IP v tejto sieti triedy C (x.y.z.254) Bude priradený pre program pixel-server.
- Ochota inštalovať winSCP.
* Skript nebude môcť upraviť blokové zoznamy po prvom spustení až do nasledujúceho obnovovacieho cyklu (3 dni).
Credits
aktualizovať: Zvláštne poďakovanie "mstombs" za skvelý kus kódu C bez jeho práce to všetko by nebolo možné, "Oki" pre kompiláciu verzie kompatibilnej s Atheros a citovať ;-) a "Nate" za pomoc s QA-ing.
Zatiaľ čo na tomto konci bolo veľa práce na zdokonalení tohto postupu, inšpirácia na to bola zapálená chlapcami na fóre DD-WRT a niektoré základy tejto príručky možno nájsť na stránke "ad-blocking with DD- WRT znovu (jednoduché) "," pixelserv bez Perl, bez jffs / cifs / usb free "a" Flexion.Org Wiki na DNSmasq ", rovnako ako ostatné.
Umožní to prasknúť
Povoliť SSH pre prístup SCP
Tým, že povolíme SSH, môžeme zase dať možnosť pripojiť sa k smerovaču pomocou protokolu SCP. s touto možnosťou môžeme potom použiť program winSCP na vizuálne navigovanie štruktúry priečinkov smerovača (ako uvidíme neskôr).
Ak to chcete urobiť, pomocou webGUI prejdite na kartu "Služby". Nájdite sekciu Secure shell a kliknite na prepínač "Povoliť" pre nastavenie SSHd.
Akonáhle sa to stane, webGUI by mal vyzerať tak, ako je uvedené nižšie, a môžete kliknúť na tlačidlo "Uložiť" (nie ešte platí).
Povoliť funkciu JFFS
Aby bolo toto nastavenie takým spôsobom stabilný, reprodukovateľné a * byť "dobrým občanom internetu", použijeme JFFS na ukladanie čo najväčšieho počtu konfigurácií. Existujú aj iné spôsoby, ako to urobiť bez povolenia JFFS, ak nemôžete v dôsledku priestorových obmedzení, ale tu nie sú zahrnuté.
* iné metódy majú váš smerovač stiahnuť spustiteľný a dynamický zoznam pixel-serverov pri každom spustení skriptu. pretože to spôsobuje námahu na serveroch, ktoré majú zoznamy a spustiteľné súbory, a to stojí nikoho na peňažných prostriedkoch, táto metóda sa snaží vyhnúť, ak je to možné.
Ak ešte neviete, čo je JFFS, toto vysvetlenie, ktoré ste získali z Wiki záznamu o JFFS v DD-WRT, by mal vyriešiť:
Systém JFFS (Journaling Flash File System) vám umožňuje mať zapisovateľný systém súborov Linux na routeru s podporou DD-WRT. Používa sa na ukladanie užívateľských programov, ako je Ipkg a dát do inak neprístupnej flash pamäte. Umožňuje vám uložiť vlastné konfiguračné súbory, hostiteľské webové stránky uložené na smerovači a mnoho ďalších vecí, ktoré nie sú schopné bez JFFS.
Ak chcete zapnúť funkciu JFFS na smerovači, prejdite na kartu Správa a nájdite sekciu JFFS. Nasledujúci obrázok ukazuje, kde nájdete túto sekciu v záložke "Správa".
V sekcii Podpora JFFS2 kliknite na prepínač "Enable" pre prepínač "JFFS2" a (ak sa objaví) "Clean JFFS2". Po výbere kliknite na "Uložiť".
Po uložení nastavení stále na karte "Správa" reštartujte smerovač pomocou tlačidla "Reboot Router". Tým sa uplatnia nastavenia a vykoná sa potrebný "formát" oblasti "JFFS".
Keď sa webGUI vráti z reštartu na kartu "Správa", počkajte ďalších pol minúty a obnovte stránku.
Ak je to úspešné, mali by ste vidieť, že vaše pripojenie JFFS má nejaký voľný priestor ako na obrázku.
Nastavenie servera pixelov
Stiahnite a extrahujte balík antireklamov pre dd-wrt zip archív, ktorý obsahuje spustiteľný súbor pixel-server (nepoužívame kredity, vyhýbame sa len "hot linkingu"), bloku ad-blockingu (napísanému naozaj) zoznam domén vytvoril "Mithridates Vii Eupator" a ja.
Nastal čas, aby sa súbory dostali do pripojenia JFFS na smerovači. na tento účel nainštalujte program winSCP (je to "next -> next -> finish" nastavenie) a otvorte ho.
V hlavnom okne vyplňte tieto informácie:
Názov hostiteľa: adresa IP smerovača (predvolená hodnota je 192.168.1.1)
Číslo portu: ponechajte nezmenené na 22
Meno používateľa: koreň (aj keď ste zmenili používateľské meno pre webGUI, používateľ SSH bude vždy * root *)
Súbor súkromného kľúča: ponechajte prázdne (je to potrebné iba vtedy, keď vytvoríte autentifikáciu založenú na pároch kľúčov, ktorú nemáme)
Súborový protokol: SCP
Taktiež je potrebné zakázať vyhľadávanie používateľov, ako je uvedené nižšie (vďaka mstombs, že to poukazuje), pretože winSCP očakáva úplný fúkaný Linux na druhej strane, ktorú vývojári spoločnosti DD-WRT napriek všetkej vynikajúcej práci nedokázali poskytnúť (hlavne preto, že tam jednoducho nie je dostatok miesta). Ak necháte toto začiarknuté, pri pripojení a ukladaní upravovaných súborov sa stretnete s hrozivými správami.
Vyberte možnosť Advance a zrušte začiarknutie políčka "Vyhľadávacie skupiny používateľov".
Aj keď je voliteľná, môžete sa teraz rozhodnúť pre uloženie nastavení pre neskoršie použitie. Ak sa rozhodnete uložiť odporúčané nastavenia, odporúča sa (napriek priamym výkrikom z "bezpečnostného paranoidného" azylu, že znesväcujeme samotnú existenciu SSH), aby ste uložili heslo.
Potom bude vaše hlavné okno vyzerať ako na obrázku a všetko, čo musíte urobiť pre pripojenie k smerovaču, je dvojité kliknutie na záznam.
Keďže ste sa prvýkrát pripojili k smerovaču, systém winSCP sa vás opýta, či ste ochotní dôverovať odtlačku prstov druhej strany. Ak chcete pokračovať, kliknite na tlačidlo "Áno".
Vývojári spoločnosti DD-WRT zaviedli bannerovú uvítaciu správu s informáciami o nainštalovanom firmvéri. raz červená, kliknite na zaškrtávacie políčko "Nikdy sa nezobrazí tento banner" a "Pokračovať".
Po pripojení prejdite do priečinka najvyššej úrovne (root AKA / ") a potom sa vráťte späť do priečinka" / jffs ", pretože je to jediné natrvalo zapisovateľné miesto na súborovom systéme smerovača (" / tmp "neprežije reštarty a zvyšok sú iba na čítanie).
Vytvorte nový priečinok stlačením klávesu F7 alebo kliknutím pravým tlačidlom na prázdne miesto, umiestnite kurzor myši nad "Nový" a kliknite na "Adresár".
Zadajte názov nového adresára "dns". vytvoríme tento adresár s cieľom usporiadať veci v adresári jffs pre budúce použitie a preto, že väčšinou meníme fungovanie služby DNS.
Skopírujte súbory "pixelserv" a "disable-adds.sh" z archívu zip archívu anti-ads-pack-for-dd-wrt tak, že ich vyberiete (použite kláves "vložiť" ".
Poznámka: Ak je váš smerovač založený na Atheros (môžete to skontrolovať na wiki DD-WRT), budete musieť použiť pixelserv_AR71xx poskytnuté spoločnosťou Oki a zahrnuté do balíka a pred tým, ako budete pokračovať, premenujte ho na "pixelserv".
Akonáhle sú súbory na smerovači, musíme ich urobiť spustiteľným výberom ich (opäť použiť "vložiť") pravým tlačidlom kliknite na "vlastnosti".
Na okne s vlastnosťami kliknite na riadok "X" pre riadok "Vlastník". ktoré poskytnú povolenia na vykonanie súborov.
Nastavenia smerovača
Teraz, keď je fáza nastavená, môžeme povedať, že smerovač má spustiť skript blokovania ad pri spustení.
Ak to chcete urobiť, v webGUI prejdite na kartu "Správa" a potom na kartu "Príkazy".
V textovom poli "Príkazy" napíšte umiestnenie skriptu ako "/jffs/dns/disable_adds.sh" ako na obrázku a potom kliknite na "Uložiť štart".
Ak bude úspešný, mali by ste vidieť, že skript sa stal súčasťou spustenia smerovača ako na obrázku vyššie.
Nastavenie zoznamu osobných blokovaných domén (voliteľné)
Tento zoznam umožňuje pridať domény do neschválených zoznamov, ak zistíte, že dva dynamické zoznamy niečo nie sú.
Ak to chcete urobiť, existujú dve možnosti a fungujú v spojení, takže môžete použiť obe podľa toho, čo je pre vás najvhodnejšie.
Poznámka: syntax je dôležitá, Nakoľko vytvárame direktívy konfigurácie, ktoré priamo používajú démon DNSMasq (proces, ktorý je zodpovedný za preklady DNS-name na IP). Ako taká nesprávna syntax tu spôsobí zlyhanie služby a ponechanie smerovača nedokáže vyriešiť adresy IP pre doménové mená (boli ste obvinení).
Ak chcete nájsť blokujúce doménové mená, ktoré chcete zablokovať, použite našu príručku "Nájdite tajné správy v hlavičke webových stránok" ako primér. Kroky na vyhľadanie mien reklamných domén sú prakticky rovnaké, len v tomto prípade hľadáte adresu namiesto správy.
Prvý a určite dostupnejším spôsobom je zaradiť zoznam do konfiguračného poľa "DNSMasq" v wegGUI. Dôvodom je, že k pridaniu do tohto zoznamu môžete jednoducho pristupovať k webGUI namiesto toho, aby ste museli "pod kapotou" robiť zmeny.
Prejdite na kartu "Služby", nájdite sekciu "DNSMasq" a nájdite textové pole "Additional DNSMasq Options".
Do tohto textového poľa zadajte zoznamy domén, ktoré chcete zablokovať pomocou syntaxe "address = / domain-name-to-block / pixel-server-ip", ako je znázornené na obrázku nižšie:
Kde v tomto príklade je "192.168.1.254" IP, ktorá je generovaná pre pixelový server na základe "sieťovej adresy" vašej LAN. Ak je vaša sieťová adresa niečo iné ako 192.168.1.x, budete musieť zodpovedajúcim spôsobom upraviť adresu pixelového servera.
Po dokončení kliknite na tlačidlo "Uložiť" v spodnej časti stránky (ešte neplatí).
Druhy možnosť je zoskupiť zoznam domén, ktoré chcete blokovať, do súboru "personal-ads-list.conf", ktorý som sám a a "Mithridates Vii Eupator" zhromaždili. Tento súbor je súčasťou archívu zip, ktorý ste stiahli predtým a je to skvelý štart pre obe metódy.
Aby ste ju mohli použiť, v prípade potreby použite svoj obľúbený textový editor na nastavenie IP servera pixelov (rovnaké obmedzenia ako tu platí). Potom ho jednoducho skopírujte do adresára "/ jffs / dns", pretože máte ostatné súbory. Akonáhle je tam, môžete použiť winSCP upraviť a pridať domény.
Nastavenie zoznamu povolených položiek
Toto je zoznam domén, ktoré budú vynechané z dynamických zoznamov hostiteľov a domén.
Je to nevyhnutné, pretože jednoduché blokovanie niektorých domén spôsobuje nesprávne fungovanie stránok, ktoré ich používajú. najpozoruhodnejším príkladom je "google-analytics.com".
Ak zablokujeme jeho doménu, nezmení sa skutočnosť, že stránky, ktoré ju používajú, si prehliadač stiahne JavaScript, ktorý sa spúšťa pri udalostiach, ako napríklad opustenie stránky. To znamená, že pre takúto lokalitu sa váš prehliadač pokúsi "zavolať domov" kontaktovaním domény google, nechá pochopiť odpoveď a budete musieť počkať, kým skript vyprší a pokračovať na ďalšiu stránku. To je sotva príjemné surfovanie, a preto je každá doména obsahujúca "google-analytics" a "googleadservices" * hardcodedly vyňaté z filtrovania.
Tento zoznam je pre vás vytvorený s uvedenými doménami, keď sa prvýkrát spustí skript, v adresári "/ jffs / dns".
Ak chcete použiť whitelist, otvorte súbor s winSCP a **perpend do zoznamu domén, ktoré chcete vylúčiť, zatiaľ čo dávajte pozor, aby ste neopustili žiadne prázdne riadky (ponechanie prázdneho riadku odstráni všetky domény zo všetkých zoznamov).
* Aj keď skript vytvára bielu listinu s doménami v nej pri prvom spustení, NEBUDE trvať na ich darčekoch pre budúce spúšťanie. takže ak máte pocit, že spoločnosť Google by mala byť zablokovaná napriek vyššie uvedeným problémom, môžete odstrániť domény z povoleného zoznamu.
** Na začiatku zoznamu musíte zadať nové domény, ktoré chcete. Je to kvôli chybe s tým, ako bash interpretuje nové riadky ... ľutujem, že zatiaľ ešte nemám prácu.
poprava
To je to, že je nakoniec čas vyvolať skript a zobraziť výsledky jednoduchým reštartovaním smerovača.
Ak to chcete urobiť z webGUI, v záložke "Administration" sa vráťte späť na "Management", v dolnej časti stránky kliknite na "Reboot router" a počkajte na návrat smerovača.
Môže trvať niekoľko minút, kým skript vykoná svoje povinnosti po prvýkrát.
Pri typoch smerovačov WRT54Gx budete vedieť, kedy skript skončí, pretože bude blikať oranžovou LED Cisco na prednej strane smerovača (ostatné smerovače by mali mať podobnú značku "tell tail")..
Aktualizácia: Táto časť bola odstránená po tom, ako bola zistená ako agnostická funkcia iného než hardvéru.
Keďže sa snažíme vidieť absenciu prvkov na webe, odporúčam jednoducho surfovať na niekoľkých miestach, aby ste videli vplyv.
Ak sa však chcete ubezpečiť, že postup bol úspešný, prvý krok ladenia v sekcii odstraňovania problémov je skvelým miestom na začatie.
* Je to vlastne komentované, takže môžete obnoviť, ak ste si istí, že to nebude mať problémy s nastavením.
Užite si to!
Riešenie problémov
Ak narazíte na problémy, môžete urobiť niekoľko vecí, aby ste zistili, čo sa stalo.
- Otestujte, že reklamná doména je vyriešená na pixelserv IP.
Môžete to urobiť vydaním príkazu nslookup proti doméne "offending". Napríklad "ad-emea.dubleclick.com" je súčasťou blokovaných hostiteľov z osobného zoznamu. Vytvorením príkazu "nslookup ad-emea.dubleclick.com" v príkazovom riadku by výsledok mal vyzerať takto:
Kde by vyzerala normálna odblokovaná odpoveď: - Prerobiť.
Aby ste sa uistili, že nič s nastavením smerovača nie je v konflikte s konfiguráciou reklamného bloku, obnovte smerovač na "Predvolené výrobné nastavenia" a skúste to znova. Po úspešnom pridaní vlastných zmien v nádeji, že sa znovu nezhromažďujú. - Uistite sa, že váš klient používa smerovač ako DNS.
Najmä pri používaní siete VPN alebo siete, ktorá je zložitejšia ako bežný smerovač až po nastavenie počítača, je možné, že klientský počítač jednoducho nepoužíva smerovač ako jeho DNS. Je veľmi jednoduché vidieť v príkaze nad tým, čo je server DNS, ktorý klient používa. Ak IP nie je rovnaká ako smerovač, nájdete problém. - Vymažte vyrovnávaciu pamäť DNS pre osobné počítače.
Dôvodom je, že inak sa naďalej zobrazujú reklamy na stránkach, s ktorými ste testovali, jednoducho preto, že váš počítač už vie, ako získať reklamný obsah bez ohľadu na to, či ho DNS konzultuje. Na oknách by to bolo "ipconfig / flushdns". - Zatvorte prehliadač.
Niekedy prehliadač uchováva informácie uložené v cache, takže vymazanie vyrovnávacej pamäte DNS, ako je uvedené vyššie, nepomôže. - V prípade pochybností reštartujte.
Niekedy môžu cache pretrvávať a najlepší spôsob, ako sa ich zbaviť, je reštartovať. Začnite so smerovačom a ak problém pretrváva, klientský počítač. - Použite syslog.
Môžete aktivovať daemon syslog smerovača a potom sa pozrieť na správy, či skript narazí na nejaké problémy, preskúmaním jeho správ. Tiež skript pridáva niektoré príkazové aliasy, aby bolo ladenie ľahšie.
Ak to chcete urobiť, prejdite na kartu Služby a povoľte démona syslog ako na obrázku nižšie:
Poznámka: Server "Remote Server" sa používa, keď máte na inom počítači naslouchajúcom syslog serveri (napr kiwi), ak ho nemáte, jednoducho ho nechajte prázdne.
Po zapnutí sa zobrazia správy o ladení / Var / log / správy súbor v termináli.
* Ak chcete vidieť VŠETKY správy z bootovania, môžete použiť "viac / var / log / správy".
* Ak chcete vidieť len správy zo skriptu v protokole, použite alokáciu "clog".
* Ak chcete zobraziť správy, ktoré sa nachádzajú v reálnom čase, použite "tail -f / var / log / messages" alebo ich alias "tlog". - Pochopte skript.
Aj keď som urobil toto video YouTube pre staršiu verziu tejto príručky a skript, stále obsahuje veľa pravdy a vysvetlenia, ktoré sa vzťahujú na to, ako funguje nová a vylepšená verzia.