Tropic Host

AdGuard Home na VPS: instalace a blokování reklam

6 min čtení
Tropic
AdGuard Home na VPS: instalace a blokování reklam

H1: Jak nainstalovat a nakonfigurovat AdGuard Home na VPS

AdGuard Home je bezplatný DNS server, který blokuje požadavky na reklamní domény, trackery a další nežádoucí zdroje. Můžete přes něj směrovat DNS dotazy počítačů, telefonů, televizorů a dalších zařízení a spravovat filtrování z jediného ovládacího panelu. Níže si projdeme instalaci na VPS s Ubuntu nebo Debianem, úvodní konfiguraci, připojení klientů a zabezpečení veřejného serveru.

Co budete potřebovat

Pro osobní použití obvykle stačí 1 vCPU, 512 MB–1 GB RAM a několik gigabajtů volného úložiště. Budete také potřebovat statickou IP adresu, přístup přes SSH a oprávnění root nebo sudo.

AdGuard Home používá:

  • 3000/TCP pro úvodního průvodce nastavením;
  • 53/UDP a 53/TCP pro běžné DNS;
  • port podle vašeho výběru pro trvalý přístup k ovládacímu panelu.

Port 53 by neměl být bez omezení otevřený celému internetu. Bezpečnému nastavení se budeme věnovat v samostatné části.

Instalace AdGuard Home na Ubuntu nebo Debian

Připojte se k VPS přes SSH a nainstalujte curl:

sudo apt update
sudo apt install -y curl

Spusťte oficiální instalační skript:

curl -s -S -L https://raw.githubusercontent.com/AdguardTeam/AdGuardHome/master/scripts/install.sh | sudo sh -s -- -v

Skript zjistí architekturu serveru, stáhne stabilní verzi, nainstaluje ji do /opt/AdGuardHome a vytvoří systémovou službu. Její stav ověříte takto:

sudo /opt/AdGuardHome/AdGuardHome -s status

Poté otevřete v prohlížeči následující adresu:

http://SERVER_IP:3000

Pokud stránka není dostupná, zkontrolujte systémový firewall a pravidla v ovládacím panelu poskytovatele hostingu.

Úvodní konfigurace

V průvodci nastavením vyberte adresy a porty pro administrační panel a DNS server.

U panelu můžete ponechat port 3000 a jako rozhraní zvolit IP adresu VPS. Vytvořte samostatné uživatelské jméno a silné heslo: panel poskytuje přístup k protokolu dotazů, filtrům a nastavení klientů.

U DNS vyberte IP adresu serveru a standardní port 53. Pokud je již obsazený, nenahrazujte ho náhodným portem — většina zařízení očekává běžné DNS na portu 53. Řešení tohoto konfliktu uvádíme níže.

Po dokončení průvodce zobrazí hlavní stránka statistiky dotazů, počet zablokovaných požadavků, aktivní klienty a nejčastější domény.

Jak funguje filtrování DNS

Než se zařízení připojí k webu nebo službě, požádá o IP adresu domény. AdGuard Home doménu porovná se svými pravidly. Požadavek na reklamní síť nebo tracker zablokuje, zatímco povolený požadavek předá nadřazenému DNS serveru.

Tento přístup poskytuje centralizované filtrování celé sítě a funguje nejen v prohlížečích, ale také v mnoha mobilních aplikacích a na chytrých televizorech. Mezi další funkce patří protokol dotazů, pravidla pro jednotlivá zařízení, Bezpečné vyhledávání a plánované blokování služeb.

AdGuard Home nedešifruje HTTPS provoz ani neupravuje kód stránek. Blokuje proto požadavky na domény, ale nedokáže odstranit každý reklamní prvek.

Základní nastavení po instalaci

Nadřazené DNS servery

Otevřete Settings → DNS settings. Zde určíte servery, kterým AdGuard Home předává povolené požadavky. Zpočátku můžete ponechat navržené hodnoty a později vybrat spolehlivé resolvery s podporou DNS-over-HTTPS nebo DNS-over-TLS.

Šifrované nadřazené DNS chrání spojení mezi VPS a externím resolverem. Spojení ze zařízení na VPS je nutné chránit samostatně pomocí DoH, DoT nebo VPN.

Blokovací seznamy

Základní filtr je již zapnutý. Nepřidávejte najednou desítky rozsáhlých seznamů: vzájemně se překrývají a zvyšují riziko falešně pozitivních blokací. Přidávejte po jednom seznamu pro konkrétní účel a sledujte protokol dotazů.

Pokud web nebo aplikace po změně přestanou fungovat, vyhledejte v protokolu zablokovanou doménu a přidejte cílenou výjimku.

Vlastní pravidla

Ve vlastních pravidlech můžete jednotlivou doménu zablokovat nebo povolit:

||ads.example.com^
@@||needed.example.com^

První řádek doménu zablokuje, druhý přidá výjimku.

Služby, plány a klienti

AdGuard Home může úplně zablokovat jednotlivé služby a použít časový plán. Pokud zařízení přidáte jako trvalé klienty, můžete přiřadit různá pravidla počítači, tabletu dítěte a televizoru.

Jak připojit zařízení

Instalace serveru automaticky nezmění nastavení DNS na vašich zařízeních. Adresu AdGuard Home musíte zadat v routeru nebo na každém klientovi.

Přes router

Otevřete nastavení routeru a najděte část DHCP, LAN nebo DNS. Zadejte IP adresu AdGuard Home jako DNS server, uložte konfiguraci a znovu připojte zařízení k síti.

Pokud má být filtrování povinné, nepřidávejte jako sekundární adresu veřejný DNS server. Některá zařízení používají obě adresy a mohou AdGuard Home obejít. Pro odolnost proti výpadku je lepší nasadit druhou instanci.

Na jednom zařízení

Pro testování můžete změnit DNS pouze na jednom počítači nebo telefonu:

  • Windows — vlastnosti síťového adaptéru a nastavení IPv4/IPv6;
  • macOS — nastavení aktivního připojení;
  • Android a iOS — nastavení aktuální Wi-Fi sítě;
  • Smart TV — ruční nastavení sítě.

Běžné nastavení Wi-Fi se při použití mobilních dat neuplatní. Aby filtrování fungovalo v libovolné síti, budete potřebovat DoH, DoT nebo VPN.

Server můžete otestovat příkazem:

nslookup example.org SERVER_IP

Požadavek by se měl objevit v protokolu dotazů AdGuard Home.

Bezpečné nastavení na veřejném VPS

Automatizované skenery rychle objeví otevřený DNS resolver. Mohou ho využít neoprávnění klienti nebo se může zapojit do DNS útoků, což vytváří další zátěž a riziko stížností na IP adresu.

Pro testování povolte přístup pouze ze své veřejné IP adresy. Pokud UFW není nainstalovaný, nejprve ho přidejte pomocí sudo apt install -y ufw.

sudo ufw allow OpenSSH
sudo ufw allow from YOUR_IP to any port 3000 proto tcp
sudo ufw allow from YOUR_IP to any port 53 proto udp
sudo ufw allow from YOUR_IP to any port 53 proto tcp
sudo ufw enable

Nejprve povolte SSH, jinak můžete ztratit přístup k VPS. Pokud se vaše IP adresa často mění, připojte zařízení přes WireGuard, Tailscale nebo jinou VPN.

Pro trvalé používání z různých sítí je lepší nastavit doménu, TLS certifikát a zabezpečené DNS:

  • 443/TCP pro DNS-over-HTTPS;
  • 853/TCP pro DNS-over-TLS;
  • omezení klientů a rychlosti dotazů v nastavení AdGuard Home.

Administrační panel by měl být také chráněný firewallem nebo VPN. Protokol obsahuje domény, ke kterým zařízení přistupovala, proto ho uchovávejte jen po nezbytnou dobu.

Chyba „Port 53 is already in use“

V Ubuntu bývá port 53 často obsazen službou systemd-resolved. Naslouchající procesy zkontrolujete takto:

sudo ss -lntup | grep ':53'

Pokud služba naslouchá pouze na 127.0.0.53, nejprve zkuste AdGuard Home navázat na konkrétní IP adresu VPS místo všech rozhraní.

Pokud konflikt přetrvává, zakažte místní stub resolver DNS:

sudo mkdir -p /etc/systemd/resolved.conf.d

printf '[Resolve]\nDNS=127.0.0.1\nDNSStubListener=no\n' | \
sudo tee /etc/systemd/resolved.conf.d/adguardhome.conf

sudo mv /etc/resolv.conf /etc/resolv.conf.backup
sudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
sudo systemctl reload-or-restart systemd-resolved
sudo /opt/AdGuardHome/AdGuardHome -s restart

SSH relaci nezavírejte, dokud nepotvrdíte, že server znovu překládá názvy domén a AdGuard Home běží.

Aktualizace a zálohy

Aktualizovat můžete z panelu nebo pomocí:

cd /opt/AdGuardHome
sudo ./AdGuardHome --update

Před většími změnami uložte soubor /opt/AdGuardHome/AdGuardHome.yaml a adresář /opt/AdGuardHome/data/. Obsahují nastavení, klienty, filtry a provozní data.

Jaké VPS zvolit pro AdGuard Home

Pro rodinu nebo malý tým obvykle stačí 1 vCPU a 1 GB RAM. Pokud bude vedle AdGuard Home běžet VPN, monitorovací systém nebo další aplikace, vyhraďte více paměti.

VPS od tropic.host se pro tento úkol hodí: můžete nainstalovat Ubuntu nebo Debian, získat dedikovanou IP adresu a udržovat DNS server dostupný nepřetržitě bez závislosti na domácím počítači. Při hostování na internetu vždy používejte firewall, zabezpečené DNS nebo VPN.

Omezení AdGuard Home

Filtrování DNS nenahrazuje blokátor v prohlížeči, antivirový program ani firewall. Nedokáže spolehlivě odstranit reklamy doručované ze stejné domény jako hlavní obsah. Z tohoto důvodu filtrování na úrovni DNS nedokáže spolehlivě odstranit videoreklamy na YouTube a Twitchi ani sponzorované příspěvky v sociálních sítích, aniž by narušilo samotné služby.

Po zablokování mohou na stránce zůstat prázdná místa. Rozšíření prohlížeče umí skrýt prvky stránky, takže ho lze používat společně s AdGuard Home. Některé aplikace také používají vlastní šifrované DNS a mohou nastavení systému obejít.

Závěr

AdGuard Home centrálně blokuje významnou část reklam a trackerů na počítačích, telefonech a dalších zařízeních. Na VPS ho lze nainstalovat během několika minut a nevyžaduje mnoho prostředků.

Po instalaci nastavte klienty a filtry, chraňte administrační panel a nenechávejte port 53 otevřený celému internetu. Pro připojení z mobilních a externích sítí použijte VPN, DNS-over-HTTPS nebo DNS-over-TLS.

FAQ

Je AdGuard Home zdarma?

Ano. AdGuard Home je distribuován zdarma a nevyžaduje předplatné. Platíte pouze za zařízení nebo VPS, na kterém běží.

Blokuje AdGuard Home reklamy na YouTube?

Ne. Reklamy a videa mohou být doručovány ze stejných domén, takže blokování DNS by narušilo samotný YouTube.

Funguje filtrování přes mobilní data?

Ano, pokud nastavíte DNS-over-TLS, DNS-over-HTTPS, kompatibilní profil nebo VPN. Změna DNS v nastavení Wi-Fi platí pouze pro danou síť.

Kolik RAM je potřeba?

Pro osobní použití obvykle stačí 512 MB–1 GB RAM. Více paměti může být potřeba při velkém počtu klientů, rozsáhlých filtrech nebo dalších službách.

Co dělat, když se po zapnutí filtrování přestane otevírat web?

Otevřete protokol dotazů, zopakujte akci, která problém způsobila, a najděte zablokovanou doménu. Přidejte cílenou výjimku místo vypnutí veškerého filtrování.