Kako postaviti AdGuard Home na VPS
Instalirajte AdGuard Home na Ubuntu, završite čarobnjak prvog pokretanja, zaključajte web sučelje, uključite DNS-over-HTTPS i DNS-over-TLS, usmjerite uređaje na svoj resolver i ne ostavljajte otvoreni DNS poslužitelj koji cijeli internet može zloupotrijebiti.

AdGuard Home je samohostani DNS sinkhole i resolver s web sučeljem. Može blokirati oglase, trackere i zlonamjerne domene za svaki uređaj koji ga koristi kao DNS — telefone, prijenosna računala, smart TV i druge VPS projekte. Za razliku od proširenja preglednika, radi čak i za aplikacije koje ignoriraju datoteku hosts. Na VPS je koristan kada želite isto filtriranje na putu ili ne želite Raspberry Pi u kućnoj mreži.
Opasno zadano stanje koje ne smijete pustiti je otvoreni resolver: ako je UDP/TCP 53 dostupan cijelom internetu bez kontrole pristupa, stranci će koristiti vaš VPS za DNS pojačavanje i dobit ćete prijave zlouporabe. Ovaj vodič instalira AdGuard Home na Ubuntu, veže DNS za localhost ili privatno WireGuard sučelje osim ako namjerno izlažete šifrirani DNS, stavlja nadzornu ploču na HTTPS i pokazuje kako prijenosna računala i telefoni mogu koristiti DNS-over-HTTPS (DoH) ili DNS-over-TLS (DoT) bez otvaranja klasičnog porta 53 svijetu.
Za što je AdGuard Home dobar
Uobičajena usporedba je Pi-hole. AdGuard Home je jedna binarna datoteka s ugrađenim web sučeljem, opcionalnim šifriranim DNS frontendovima i postavkama po klijentu. Možete ga pokrenuti u Dockeru ili kao systemd uslugu. Na Hiddence VPS dobro ide uz privatni VPN: uređaji ulaze u WireGuard, šalju DNS na VPS kroz tunel i nikad javno ne izlažu port 53.
- Blokiranje na razini mreže bez aplikacije na svakom uređaju
- DoH (443) i DoT (853) tako da DNS ne ide otvorenim tekstom na javnom Wi-Fi
- Dnevnik upita i statistika da vidite koji uređaj priča s kojom domenom
- Vlastiti upstream poslužitelji (Quad9, Cloudflare ili vaš Unbound)
- Mali otisak — VPS od 1 GB filtrira kućanstvo i nekoliko dodatnih klijenata
Zahtjevi
Treba vam domena ako želite pouzdan certifikat za DoH/DoT i nadzornu ploču. Možete testirati na HTTP i IP poslužitelja, ali tako ne ostavljajte. Ako systemd-resolved već drži port 53 na Ubuntuu, oslobodit ćemo ga prije nego AdGuard Home veže DNS.
- Ubuntu 22.04 ili 24.04 VPS s root/sudo
- 1 GB RAM dovoljno je za osobnu upotrebu
- Domena ili poddomena (dns.example.com) s A zapisom na VPS
- SSH pristup; opcionalno WireGuard ako DNS treba samo u tunelu
Korak 1. Oslobodite port 53 i instalirajte AdGuard Home
Ubuntu Server često pokreće systemd-resolved kao stub na 127.0.0.53:53. AdGuard Home želi 53 na sučeljima koja odaberete. Instalater to umije sam, ali eksplicitan korak sprječava napola pokvaren DNS na samom VPS (poslužitelj i dalje mora razrješavati pakete).
ssh root@YOUR_VPS_IP
apt update && apt -y upgrade
apt -y install curl ca-certificates
# See who owns port 53:
ss -tulpn | grep ':53'
# Typical Ubuntu fix: stop stub listener, point the OS at a temporary resolver
mkdir -p /etc/systemd/resolved.conf.d
cat >/etc/systemd/resolved.conf.d/adguardhome.conf <<'EOF'
[Resolve]
DNS=1.1.1.1
DNSStubListener=no
EOF
ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf
systemctl restart systemd-resolved
curl -s -S -L https://raw.githubusercontent.com/AdguardTeam/AdGuardHome/master/scripts/install.sh | sh -s -- -vKorak 2. Čarobnjak prvog pokretanja
Instalater ispisuje URL, obično http://YOUR_IP:3000/. Otvorite ga, napravite administratora s dugom lozinkom i odaberite adrese slušanja. Za javni VPS sigurno prvo postavljanje je: Admin Web na 127.0.0.1:3000 (kasnije Caddy ispred) ili na 80/443 nakon TLS; DNS na 127.0.0.1:53 plus VPN sučelje, ne na 0.0.0.0:53. Ako vam stvarno treba DNS „kao u LAN“ za prijatelje, preferirajte DoH/DoT na 443/853 s autentifikacijom, ne otvoreni 53/udp.
Odaberite upstream DNS poslužitelje kojima vjerujete. Mnogi koriste https://dns.quad9.net/dns-query ili Cloudflare. Uključite paralelne zahtjeve ako želite brži failover. Uključite zadane popise filtara, ostale dodajte kasnije — pedeset popisa prvog dana čini uklanjanje pogrešaka nemogućim kada se web pokvari.
Korak 3. Obrnuti proxy i HTTPS za nadzornu ploču
Kada čarobnjak završi, AdGuard Home obično premjesti sučelje na port 80. To se sudara s Caddyjem ili Nginxom ako hostirate i webove. Čist obrazac: web AdGuard Home na 127.0.0.1:8080, DNS na 127.0.0.1:53, Caddy na 443 i za nadzornu ploču i za DoH.
# In AdGuard Home settings, bind the web UI to 127.0.0.1:8080
# Example Caddyfile:
dns.example.com {
reverse_proxy 127.0.0.1:8080
}
# After Caddy is up:
curl -I https://dns.example.comKorak 4. Uključite DNS-over-HTTPS i DNS-over-TLS
U postavkama šifriranja uključite šifriranje, postavite ime poslužitelja na dns.example.com i usmjerite AdGuard Home na datoteke certifikata — ili one koje Caddy čuva, ili one koje sam AdGuard Home dobije ako sluša na 443. DoH je obično https://dns.example.com/dns-query. DoT je dns.example.com:853. Ako Caddy već drži 443, neka Caddy skida TLS i obrnuto proksira DoH putanju na običan HTTP DoH port AdGuard Home, ili neka AdGuard Home sluša na 443, a nadzornu ploču stavite na drugu poddomenu.
Provjerite klijentom prije nego što promijenite DNS na svim uređajima. Na prijenosnom računalu s modernim curl:
curl -H 'accept: application/dns-json' 'https://dns.example.com/dns-query?name=example.com&type=A'
# DoT test (kdig from knot-dnsutils, if installed):
# kdig @dns.example.com +tls-ca +tls-host=dns.example.com example.comKorak 5. Usmjerite prave uređaje na svoj resolver
Windows 11 i noviji Android umiju DoH predložak. iOS može koristiti konfiguracijski profil ili klijent s DoH. Firefox i Chromium također prihvaćaju vlastiti DoH URL. Na kućnom usmjerivaču WAN DNS mijenjajte samo ako usmjerivač podržava DoT/DoH; inače podignite WireGuard i postavite DNS na VPN IP VPS-a da klasični DNS nikad ne ide preko interneta.
- Android 9+: Privatni DNS (DoT) → dns.example.com
- Firefox: Postavke → Mreža → DNS over HTTPS → vlastiti URL https://dns.example.com/dns-query
- Apple uređaji: potpisani mobileconfig ili aplikacija s DoH/DoT
- Drugi VPS: postavite resolv.conf ili systemd-resolved na WireGuard IP ove AdGuard instance
- Ne postavljajte IP ovog VPS kao DNS na slučajnim javnim mrežama bez šifriranja
Korak 6. Vatrozid — zatvorite otvoreni rekurzivni DNS
Ovaj odjeljak sprječava neugodno iznenađenje. Dopustite SSH, HTTPS i opcionalno 853/tcp za DoT. Ne dopuštajte 53/udp s 0.0.0.0/0 osim ako imate vrlo konkretan, ograničeni i autentificirani dizajn — i čak tada vjerojatno ne biste trebali.
ufw allow OpenSSH
ufw allow 443/tcp comment 'dashboard + DoH'
ufw allow 853/tcp comment 'DoT'
# If DNS is only on WireGuard (example iface wg0, 10.8.0.1):
# ufw allow in on wg0 to any port 53 proto udp
ufw enable
ufw status verbose
# Confirm 53 is not public:
ss -tulpn | grep ':53'Filtri, bijele liste i klijenti
Počnite sa zadanim DNS filtrom AdGuard i jednim popisom malvera. Kada se web ponaša loše, pogledajte dnevnik upita, pa dodajte konkretno allowlist pravilo umjesto da isključite cijelo blokiranje. Koristite imena klijenata (po IP ili ClientID u DoH URL) da strože filtrirate smart TV i blaže službeno prijenosno računalo. Uključujte sigurno pretraživanje samo ako ga stvarno želite — iznenađuje ljude koji nisu tražili prepisane Google rezultate.
- Dnevnik upita: pronađite blokiranu domenu, pa je stavite na bijelu listu ako je lažni pozitiv
- Postavke klijenta: različiti popisi blokiranja po uređaju
- Zabranjeni klijenti: blokirajte raspone koje ne posjedujete
- Ograničenje brzine: uključite ako ikad izložite više od šačice korisnika
Rješavanje problema
Ako sam VPS ne radi apt update, pokvarili ste lokalni DNS dok ste oslobađali port 53 — stavite statički resolver u resolved.conf kao gore. Ako uređaji „imaju internet“ ali oglasi i dalje učitavaju, zaobilaze vaš DNS (tvrdo kodirani resolveri, DoH u pregledniku ili aplikacija s vlastitim DNS). Ako je nadzorna ploča prazna, gledate pogrešnu instancu ili još port 3000 pošto je čarobnjak premjestio sučelje.
- apt ne radi: provjerite /etc/resolv.conf i systemd-resolved
- Port 53 je zauzet: ss -tulpn, isključite stub listener
- Pogreške certifikata DoH: ime hosta mora odgovarati SAN certifikata
- Oglasi se i dalje vide: DoH preglednika prema drugom pružatelju prepisuje OS
- Puno RAM: dnevnik + previše popisa filtara — skratite popise i zadržavanje zapisa
Sigurnosni kontrolni popis
Web sučelje je administratorski panel. Jedinstvena lozinka, samo HTTPS i ne objavljujte URL. Držite AdGuard Home ažurnim; i instalacijska skripta i sučelje imaju put ažuriranja. Ograničite 443 ako samo vaši uređaji trebaju koristiti DoH — HTTP basic auth na DoH putanji ili pristup samo preko WireGuard mnogo je sigurniji od slavnog otvorenog resolvera.
- Nema javnog 53/udp
- HTTPS na nadzornoj ploči
- Jaka administratorska lozinka u upravitelju lozinki
- Za obiteljske uređaje preferirajte WireGuard + unutarnji DNS
- Kopirajte AdGuardHome.yaml van poslužitelja
Savjeti
- Prije svake nadogradnje spremite /opt/AdGuardHome/AdGuardHome.yaml
- Namjenska poddomena; ne dijelite je s nepovezanim CMS
- Ako već vodite Caddy, neka Caddy drži 443, a AdGuard Home ostane na localhost
- Zabilježite DoH URL za uređaje — zaboravit ćete ga
- Uparite s učvršćivanjem SSH i vatrozida da VPS ne bude „siguran samo od DNS“
AdGuard Home na VPS je pravocrtan: oslobodite port 53 lokalno, pokrenite instalater, završite čarobnjak s jakom administratorskom lozinkom, stavite sučelje na HTTPS, uključite DoH/DoT i držite klasični DNS daleko od javnog interneta. Usmjerite uređaje na šifriranu krajnju točku ili VPN IP, počnite s malim skupom filtara i koristite dnevnik upita kada nešto pukne. To je privatni resolver kojim stvarno upravljate — ne javni otvoreni DNS zbog kojeg će VPS ući u baze zlouporabe.