Pi-hole ~ blokace reklam a sledování uživatelů na úrovni DNS


Datum: October 05, 2021 | 7 min. čtení | Autor: KV

pi-hole-dns

Pi-hole je aplikace pro blokování reklam na úrovni DNS. Blokováním se může výrazně snížit velikost přenášených dat, což v důsledku zrychlí načítání webových stránek. Zároveň je také možné eliminovat sledovací scripty zjišťující informace o návštěvnících.

V současnosti existuje řada rozšíření webových prohlížečů pro blokování reklamy, například uBlock Origin, nebo Adblock Plus, který bohužel prodáva společnostem možnost zobrazovat reklamy za poplatek. Výhodou Pi-hole je, že má schopnost blokovat reklamy na netradičních místech, jako jsou chytré televize a mobilní zařízení apod., bez nutnosti instalace dalšího software.

Pro více informací navštivte oficiální web https://pi-hole.net/ a GitHub repozitář https://github.com/pi-hole/pi-hole

Funkce

Pi-hole nabízí celou řadu užitečných funkcí:

  • Ochrana v celé síti

    • Namísto pluginů do prohlížeče nebo jiného software, Pi-hole nainstalujete na jedno místo a celá vaše síť je chráněna.
  • Blokování reklamy v aplikacích

    • Blokování na úrovni sítě vám umožňuje blokovat reklamy na netradičních místech, jako jsou mobilní aplikace a chytré televize, bez ohledu na hardware nebo operační systém.
  • Zrychlení internetu

    • Protože jsou reklamy před stažením blokovány, výkon sítě se zlepší a vše se bude načítat rychleji.
  • Monitorování komunikace

    • Pi-hole nabízí centrální místo pro prohlížení statistik, grafy jsou schopné zobrazit zajímave informace o provozu sítě.

Instalace

Pi-hole můžete spustit v kontejneru (docker) nebo jej nainstalovat přímo do podporovaného operačního systému prostřednictvím automatizovaného instalačního programu. Bez problémů dokáže běžet i na Raspberry Pi Zero W.

Raspberry Pi

Budete potřebovat:

  • Raspberry Pi Zero W
  • microSD kartu (4GB+)
  • napájecí zdroj (Micro-USB)

    1. Nainstalujeme Raspberry Pi Imager:

      sudo apt-get update && sudo apt-get install rpi-imager
      
    2. Vybereme Raspberry Pi OS (32-bit), microSD kartu a spustíme zápis stlačením WRITE: pihole_imager
    3. Na microSD kartě ve složce /boot vytvoříme soubor ssh:

      cd /media/$USER/nazev_vasi_sd_karty/boot
      touch ssh
      
    4. Na microSD kartě ve složce /boot vytvoříme soubor wpa_supplicant.conf (Raspberry Pi nepodporuje 5GHz):

      country=CZ
      ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
      update_config=1 
      network={
      ssid="Nazev Wi-Fi"
      psk="Heslo Wi-Fi"
      }
      
    5. Po vložení microSD do Raspberry Pi a zapnutí, se po krátké době připojí na vaší Wi-Fi
    6. Pomocí nástroje nmap, mobilní aplikace Fing, nebo v nastavení routeru zjistíme IP adresu RPi a připojíme se:

      ssh pi@192.168.2.200 (heslo "raspberry")
      
    7. Nastavíme statickou IP adresu (podle vaší sítě):

      sudo nano /etc/dhcpcd.conf
      ---
      interface eth0
      static ip_address=192.168.2.2/24
      static routers=192.168.2.1
      static domain_name_servers=192.168.2.1
      
    8. Případně můžete upravit další nastavení jako hostname, lokalizaci apod.:

      sudo raspi-config
      
    9. Aktualizuje systém a restartujeme

      sudo apt-get update && sudo apt-get upgrade --assume-yes && sudo reboot
      

Automatická instalace

Ti, kteří chtějí začít rychle a pohodlně, si mohou nainstalovat Pi-hole pomocí následujícího open-source příkazu:

curl -sSL https://install.pi-hole.net | bash
  1. Raspberry Pi (Pi-Hole) nás upozorní, že potřebuje statickou IP adresu: pihole_01
  2. Který DNS chcete použít k překladu IP/domén, například Cloudflare:

pihole_02

  1. Defaulní seznam domén, které blokovat. Doporučujeme ponechat výchozí nastavení a blokovat vše:

pihole_03

  1. Protože chceme blokovat nechtěné reklamy bez ohledu na verzi protokolu IP, můžeme ponechat oba protokoly:

pihole_04

  1. IP adresa by měla být statická, kterou jste dříve nakonfigurovali pro Raspberry Pi. Brána je obvykle IP vašeho routeru:

pihole_05

  1. Ano, chceme nainstalovat webové rozhraní, protože chceme později použít šikovný Dashboard:

pihole_06

  1. Ano, chceme také nainstalovat webový server, jinak nebudeme moci dashboard používat:

pihole_07

  1. Logování dotazů nám umožní kontrolovat, když se něco pokazí:

pihole_08

  1. Pro režim ochrany osobních údajů můžeme také použít výchozí možnost, protože chceme vidět vše, co Pi-Hole blokuje:

pihole_09

  1. Toto je poslední a nejdůležitější část! Je zde zobrazeno heslo, které potřebujeme k přihlášení do webového dashboardu:

pihole_10

Základní práce s dashboardem (AdminLTE)

Kromě blokování reklam má Pi-hole také informativní webové rozhraní, které zobrazuje statistiky o všech doménách, na které se ve vaší síti dotazuje:

pihole_dashboard

Pi-hole funguje dobře se stávajícím serverem DHCP, ale pomocí nástroje Pi-hole můžete mít správu sítě na jednom místě:

pihole_dhcp

Vylaďte nastavení pomocí povolených/zakázaných domén (je možné použít regexové příkazy):

pihole_blacklist

Podívejte se na všechny domény, které jsou dotazovány ve vaší síti, odkud pocházejí, atd.:

pihole_querylog

Sledujte nejžádanější domény a přidejte je na allow/deny list:

audit-log

Ovládejte nastavení, konfiguraci a provozovatele DNS z webového rozhraní:

pihole_dns

Používáte DNS od svého poskytovatele internetu?

Ne každý domácí uživatel chce používat DNS od svého ISP, zde jsou některé důvody, proč zvolit jiné veřejné servery:

  • Snadněji zapamatovatelná IP adresa
  • Pravděpodobně rychlejší odezva odpovědi
  • Podpora DNS-over-HTTPS
  • Možnost blokování reklam, phishingu a malware
  • DNS vašeho ISP nemusí podporovat DNSSEC
  • DNS vašeho ISP musí dle zákona blokovat některé domény

Výběr veřejných DNS resolverů:

Cloudflare

  • 1.1.1.1 (Primární, DNSSEC, DNS-over-HTTPS, DNS-over-TLS)
  • 1.0.0.1 (Sekundární, DNSSEC, DNS-over-HTTPS, DNS-over-TLS)
  • 2606:4700:4700::1111 (Primární, DNSSEC, DNS-over-HTTPS, DNS-over-TLS)
  • 2606:4700:4700::1001 (Sekundární, DNSSEC, DNS-over-HTTPS, DNS-over-TLS)

V současné době nejrychlejší DNS resolver, představen 1. dubna 2018. CloudFlare neprovádí žádné filtrování provozu, naopak upřednostňuje rychlost, bezpečnost, podporu a integraci nových technologií, více podrobností zde.

Google

  • 8.8.8.8 (Primární, DNSSEC, DNS-over-HTTPS)
  • 8.8.8.4 (Sekundární, DNSSEC, DNS-over-HTTPS)
  • 2001:4860:4860::8888 (Primární, DNSSEC, DNS-over-HTTPS)
  • 2001:4860:4860::8844 (Sekundární, DNSSEC, DNS-over-HTTPS)

Jeden z nejznámějších DNS resolverů, zaměření na rychlost, dostupnost a bezpečnost, nefiltruje provoz. Více informací zde.

Quad9

  • 9.9.9.9 (Primární, Blocklist, DNSSEC, DNS-over-TLS)
  • 149.112.112.112 (Sekundární, Blocklist, DNSSEC, DNS-over-TLS)
  • 9.9.9.10 (Primární, DNSSEC, DNS-over-TLS)
  • 149.112.112.10 (Sekundární, DNSSEC, DNS-over-TLS)
  • 2620:fe::fe (Primární, Blocklist, DNSSEC, DNS-over-TLS)
  • 2620:fe::9 (Sekundární, Blocklist, DNSSEC, DNS-over-TLS)
  • 2620:fe::10 (Primární, DNSSEC, DNS-over-TLS)
  • 2620:fe::fe:10 (Sekundární, DNSSEC, DNS-over-TLS)

DNS resolvery Quad9 jsou určeny k filtrování provozu, zdarma nabízejí ochranu před phishingem, malware a exploit kity. K blokování nebezpečných domén slouží "Blocklist" sestavený z veřejných i privátních seznamů. Quad9 také nabízí sadu DNS bez filtrování provozu. Více informací zde.

CZ.NIC ODVR

  • 217.31.204.130 (Primární, DNSSEC)
  • 193.29.206.206 (Sekundární, DNSSEC)
  • 2001:1488:800:400::130 (Primární, DNSSEC)
  • 2001:678:1::206 (Sekundární, DNSSEC)

Otevřené DNSSEC Validující Resolvery od správce CZ domény, více informací zde.

SafeDNS

  • 195.46.39.39 (Primární, Blocklist, DNSSEC)
  • 195.46.39.40 (Sekundární, Blocklist, DNSSEC)

Ve verzi zdarma blokuje nejnebezpečnější malware a phishing weby, v placené verzi je možné podrobně nastavit filtrování provozu, včetně blokování reklam a malware. Vhodné pro domácnosti i firmy, více informací zde.

DNS.Watch

  • 84.200.69.80 (Primární, DNSSEC)
  • 84.200.70.40 (Sekundární, DNSSEC)
  • 2001:1608:10:25::1c04:b12f (Primární, DNSSEC)
  • 2001:1608:10:25::9249:d69b (Sekundární, DNSSEC)

Menší služba, převážně zaměřeno na bezpečnost, bez ukládání logů, anonymizovaný traffic je použit na bezpečnostní výzkum, možné podpořit pomocí dotací. Více informací zde.

Freenom

  • 80.80.80.80 (Primární, DNSSEC)
  • 80.80.81.81 (Sekundární, DNSSEC)

Zaměřeno na bezpečnost, neukládají logy, používá miliony lidí. Více informací zde.

Cisco Umbrella (OpenDNS)

  • 208.67.222.222 (Primární, Blocklist)
  • 208.67.220.220 (Sekundární, Blocklist)
  • 208.67.220.222 (Terciární, Blocklist)
  • 208.67.222.220 (Kvartární, Blocklist)
  • 2620:0:ccc::2 (Primární, Blocklist)
  • 2620:0:ccd::2 (Sekundární, Blocklist)

Původně OpenDNS odkoupila v roce 2015 společnost Cisco. DNS resolvery je stále možné používat zdarma, kdy jsou blokovány některé nebezpečné domény. Placená verze "Cisco Umbrella" je security řešení postavené na filtrování provozu, ochraně proti malware, ransomware a dalším hrozbám. Vhodné převážně pro firmy. Více informací zde.

Toto je pouze malý výčet těch známějších DNS resolverů, existuje jich opravdu hodně. Za zmínku ještě stojí například Neustar, kde si můžete vybrat servery zdarma, podle toho jaký obsah chcete blokovat.

Pokud by vás zajímala rychlost, statistiky z provozu vybraných DNS resolverů naleznete na webu dnsperf.com Případně můžete zkusit vlastní testy pomocí nástrojů namebench nebo DNS Benchmark.


Přidej se do našeho mailing listu

Chceš se dozvědět víc ohledně IT bezpečnosti? Tak si na správném místě.


TunaSec z.s.
Koliště 1965/13a, Černá Pole, 602 00 Brno
Phone  +420 774 071 231
Envelope  info@tunasec.com