Πώς να ρυθμίσετε το AdGuard Home σε ένα VPS
Εγκαταστήστε το AdGuard Home σε Ubuntu, ολοκληρώστε τον οδηγό πρώτης εκτέλεσης, κλειδώστε τη διεπαφή ιστού, ενεργοποιήστε DNS-over-HTTPS και DNS-over-TLS, κατευθύνετε συσκευές στον επιλύτη σας και αποφύγετε να τρέχετε ανοιχτό διακομιστή DNS που μπορεί να καταχραστεί όλο το διαδίκτυο.

Το AdGuard Home είναι αυτοφιλοξενούμενο DNS sinkhole και επιλύτης αναδρομικού στυλ με διεπαφή ιστού. Μπορεί να αποκλείσει διαφημίσεις, ιχνηλάτες και κακόβουλους τομείς για κάθε συσκευή που το χρησιμοποιεί ως DNS — τηλέφωνα, φορητούς, έξυπνες τηλεοράσεις και άλλα έργα VPS. Σε αντίθεση με επέκταση προγράμματος περιήγησης, λειτουργεί ακόμη και για εφαρμογές που αγνοούν αρχεία hosts. Η εκτέλεσή του σε VPS είναι χρήσιμη όταν θέλετε το ίδιο φιλτράρισμα εν κινήσει ή όταν δεν θέλετε Raspberry Pi στο οικιακό δίκτυο.
Η επικίνδυνη προεπιλογή που δεν πρέπει να στείλετε είναι ανοιχτός επιλύτης: αν το UDP/TCP 53 είναι προσβάσιμο από όλο το διαδίκτυο χωρίς έλεγχο πρόσβασης, ξένοι θα χρησιμοποιήσουν το VPS σας για ενίσχυση DNS και θα λάβετε παράπονα κατάχρησης. Αυτός ο οδηγός εγκαθιστά το AdGuard Home σε Ubuntu, δένει το DNS στο localhost ή σε ιδιωτική διεπαφή WireGuard εκτός αν εκθέτετε σκόπιμα κρυπτογραφημένο DNS, βάζει τον πίνακα πίσω από HTTPS και δείχνει πώς φορητοί και τηλέφωνα μπορούν να χρησιμοποιούν DNS-over-HTTPS (DoH) ή DNS-over-TLS (DoT) χωρίς να ανοίγουν την κλασική θύρα 53 στον κόσμο.
Για τι είναι καλό το AdGuard Home
Η συνηθισμένη σύγκριση είναι το Pi-hole. Το AdGuard Home είναι ένα δυαδικό με ενσωματωμένη διεπαφή ιστού, προαιρετικά κρυπτογραφημένα μπροστινά DNS και ρυθμίσεις ανά πελάτη. Μπορείτε να το τρέξετε σε Docker ή ως υπηρεσία systemd. Σε VPS Hiddence ταιριάζει καλά με ιδιωτικό VPN: οι συσκευές ενώνονται στο WireGuard, στέλνουν DNS στο VPS μέσω της σήραγγας και δεν εκθέτουν ποτέ δημόσια τη θύρα 53.
- Αποκλεισμός σε όλο το δίκτυο χωρίς εγκατάσταση εφαρμογής σε κάθε συσκευή
- DoH (443) και DoT (853) ώστε το DNS να μην είναι καθαρό κείμενο σε δημόσιο Wi-Fi
- Αρχείο καταγραφής ερωτημάτων και στατιστικά ώστε να βλέπετε ποια συσκευή μιλάει με ποιον τομέα
- Προσαρμοσμένα upstream (Quad9, Cloudflare ή το δικό σας Unbound)
- Μικρό αποτύπωμα — ένα VPS 1 GB μπορεί να φιλτράρει ένα νοικοκυριό συν μερικούς επιπλέον πελάτες
Απαιτήσεις
Χρειάζεστε τομέα αν θέλετε αξιόπιστο πιστοποιητικό για DoH/DoT και για τον πίνακα. Μπορείτε να δοκιμάσετε πρώτα σε HTTP και την IP του διακομιστή, αλλά μην το αφήσετε έτσι. Αν το systemd-resolved κατέχει ήδη τη θύρα 53 στο Ubuntu, θα την απελευθερώσουμε πριν το AdGuard Home δέσει το DNS.
- Ubuntu 22.04 ή 24.04 VPS με root/sudo
- 1 GB RAM αρκεί για προσωπική χρήση
- Τομέας ή υποτομέας (dns.example.com) με εγγραφή A στο VPS
- Πρόσβαση SSH· προαιρετικό WireGuard αν θέλετε DNS μόνο μέσα σε σήραγγα
Βήμα 1: Ελευθερώστε τη θύρα 53 και εγκαταστήστε το AdGuard Home
Το Ubuntu Server συχνά τρέχει systemd-resolved ως stub στο 127.0.0.53:53. Το AdGuard Home θέλει την 53 στις διεπαφές που επιλέγετε. Ο εγκαταστάτης μπορεί να το κάνει, αλλά το να το κάνετε ρητά αποφεύγει μισοσπασμένο DNS στο ίδιο το VPS (ο διακομιστής πρέπει ακόμη να επιλύει πακέτα).
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 -- -vΒήμα 2: Οδηγός πρώτης εκτέλεσης
Ο εγκαταστάτης εκτυπώνει URL, συνήθως http://YOUR_IP:3000/. Ανοίξτε το, δημιουργήστε χρήστη διαχειριστή με μακρύ κωδικό και επιλέξτε διευθύνσεις ακρόασης. Για δημόσιο VPS μια ασφαλής πρώτη ρύθμιση είναι: Admin Web στο 127.0.0.1:3000 (θα βάλετε Caddy μπροστά) ή στις 80/443 μετά το TLS· ακρόαση DNS στο 127.0.0.1:53 συν διεπαφή VPN, όχι στο 0.0.0.0:53. Αν πραγματικά χρειάζεστε DNS τύπου LAN για φίλους, προτιμήστε DoH/DoT στις 443/853 με έλεγχο ταυτότητας, όχι ανοιχτό 53/udp.
Διαλέξτε διακομιστές DNS upstream που εμπιστεύεστε. Πολλοί χρησιμοποιούν https://dns.quad9.net/dns-query ή Cloudflare. Ενεργοποιήστε παράλληλα αιτήματα αν θέλετε ταχύτερη εναλλαγή. Ενεργοποιήστε τις προεπιλεγμένες λίστες φίλτρων και προσθέστε περισσότερες αργότερα — η ενεργοποίηση πενήντα λιστών την πρώτη ημέρα κάνει την αντιμετώπιση προβλημάτων αδύνατη όταν σπάσει ένας ιστότοπος.
Βήμα 3: Αντίστροφος διαμεσολαβητής και HTTPS για τον πίνακα
Όταν τελειώσει ο οδηγός, το AdGuard Home συνήθως μετακινεί τη διεπαφή στη θύρα 80. Αυτό συγκρούεται με Caddy ή Nginx αν φιλοξενείτε και ιστότοπους. Καθαρό μοτίβο: ιστός AdGuard Home στο 127.0.0.1:8080, DNS στο 127.0.0.1:53, Caddy στη 443 και για τον πίνακα και για 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.comΒήμα 4: Ενεργοποιήστε DNS-over-HTTPS και DNS-over-TLS
Στις ρυθμίσεις Encryption ενεργοποιήστε την κρυπτογράφηση, ορίστε το όνομα διακομιστή σε dns.example.com και κατευθύνετε το AdGuard Home στα αρχεία πιστοποιητικών σας — είτε αυτά που αποθηκεύει το Caddy είτε πιστοποιητικά που αποκτά το ίδιο το AdGuard Home αν ακούει στη 443. Το DoH είναι συνήθως https://dns.example.com/dns-query. Το DoT είναι dns.example.com:853. Αν το Caddy κατέχει ήδη τη 443, αφήστε το Caddy να τερματίσει TLS και να κάνει αντίστροφο διαμεσολαβητή της διαδρομής DoH στην απλή θύρα HTTP DoH του AdGuard Home ή αφήστε το AdGuard Home να ακούει στη 443 και βάλτε τον πίνακα σε άλλον υποτομέα.
Επαληθεύστε με πελάτη πριν αλλάξετε κάθε συσκευή. Σε φορητό με σύγχρονο 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.comΒήμα 5: Κατευθύνετε πραγματικές συσκευές στον επιλύτη σας
Τα Windows 11 και πρόσφατες εκδόσεις Android μπορούν να χρησιμοποιήσουν πρότυπο DoH. Το iOS μπορεί να χρησιμοποιήσει προφίλ διαμόρφωσης ή πελάτη που υποστηρίζει DoH. Το Firefox και το Chromium επιτρέπουν επίσης προσαρμοσμένο URL DoH. Για οικιακό δρομολογητή ορίστε WAN DNS μόνο αν ο δρομολογητής υποστηρίζει DoT/DoH· αλλιώς τρέξτε WireGuard και ορίστε DNS στην IP VPN του VPS ώστε το κλασικό DNS να μην διασχίζει ποτέ το διαδίκτυο.
- Android 9+: Private DNS (DoT) → dns.example.com
- Firefox: Ρυθμίσεις → Δίκτυο → DNS over HTTPS → προσαρμοσμένο URL https://dns.example.com/dns-query
- Συσκευές Apple: υπογεγραμμένο mobileconfig ή εφαρμογή που υποστηρίζει DoH/DoT
- Άλλα VPS: ορίστε resolv.conf ή systemd-resolved στην IP WireGuard αυτής της παρουσίας AdGuard
- Αποφύγετε να ορίσετε αυτή την IP VPS ως DNS σε τυχαία δημόσια δίκτυα χωρίς κρυπτογράφηση
Βήμα 6: Τείχος προστασίας — κλείστε το ανοιχτό αναδρομικό DNS
Αυτή είναι η ενότητα που αποτρέπει μια άσχημη έκπληξη. Επιτρέψτε SSH, HTTPS και προαιρετικά 853/tcp για DoT. Μην επιτρέψετε 53/udp από 0.0.0.0/0 εκτός αν έχετε πολύ συγκεκριμένο, περιορισμένο σε ρυθμό, αυθεντικοποιημένο σχεδιασμό — και ακόμη και τότε, πιθανώς δεν πρέπει.
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'Φίλτρα, λίστες επιτρεπομένων και πελάτες
Ξεκινήστε με το προεπιλεγμένο φίλτρο DNS του AdGuard και μία λίστα κακόβουλου λογισμικού. Όταν ένας ιστότοπος συμπεριφέρεται περίεργα, ελέγξτε το αρχείο καταγραφής ερωτημάτων και μετά προσθέστε συγκεκριμένο κανόνα επιτρεπομένων αντί να απενεργοποιήσετε όλο τον αποκλεισμό. Χρησιμοποιήστε ονόματα πελατών (κατά IP ή ClientID στο URL DoH) ώστε να εφαρμόζετε αυστηρότερες λίστες σε έξυπνη τηλεόραση και χαλαρότερες σε φορητό εργασίας. Ενεργοποιήστε την ασφαλή αναζήτηση μόνο αν πραγματικά τη θέλετε — εκπλήσσει ανθρώπους που δεν ζήτησαν ξαναγραμμένα αποτελέσματα Google.
- Αρχείο καταγραφής ερωτημάτων: βρείτε τον αποκλεισμένο τομέα, μετά βάλτε τον στη λευκή λίστα αν είναι ψευδώς θετικό
- Ρυθμίσεις πελάτη: διαφορετικές λίστες αποκλεισμού ανά συσκευή
- Μη επιτρεπόμενοι πελάτες: αποκλείστε εύρη που δεν σας ανήκουν
- Περιορισμός ρυθμού: ενεργοποιήστε αν εκθέτετε ποτέ περισσότερους από μια χούφτα χρήστες
Αντιμετώπιση προβλημάτων
Αν το ίδιο το VPS δεν μπορεί να κάνει apt update, σπάσατε το τοπικό DNS ενώ ελευθερώνατε τη θύρα 53 — βάλτε στατικό επιλύτη στο resolved.conf όπως φαίνεται παραπάνω. Αν οι συσκευές «έχουν διαδίκτυο» αλλά οι διαφημίσεις φορτώνουν ακόμη, παρακάμπτουν το DNS σας (σκληροκωδικοποιημένοι επιλύτες, DoH στο πρόγραμμα περιήγησης ή εφαρμογή με δικό της DNS). Αν ο πίνακας είναι άδειος, κοιτάτε λάθος παρουσία ή χτυπάτε ακόμη τη θύρα 3000 αφού ο οδηγός μετακίνησε τη διεπαφή.
- Το apt αποτυγχάνει: ελέγξτε /etc/resolv.conf και systemd-resolved
- Θύρα 53 σε χρήση: ss -tulpn, απενεργοποιήστε τον ακροατή stub
- Σφάλματα πιστοποιητικού DoH: το όνομα κεντρικού υπολογιστή πρέπει να ταιριάζει με το SAN του πιστοποιητικού
- Οι διαφημίσεις φαίνονται ακόμη: το DoH του προγράμματος περιήγησης σε άλλον πάροχο παρακάμπτει το OS
- Υψηλή RAM: αρχείο καταγραφής ερωτημάτων + πάρα πολλές λίστες φίλτρων — μειώστε λίστες και συντομεύστε τη διατήρηση καταγραφής
Λίστα ελέγχου ασφαλείας
Η διεπαφή ιστού είναι πίνακας διαχειριστή. Μοναδικός κωδικός, μόνο HTTPS και μην δημοσιεύετε το URL. Κρατήστε το AdGuard Home ενημερωμένο· και το σενάριο εγκατάστασης και η διεπαφή εκθέτουν διαδρομή ενημέρωσης. Περιορίστε τη 443 αν μόνο οι συσκευές σας πρέπει να χρησιμοποιούν DoH — HTTP basic auth στη διαδρομή DoH ή πρόσβαση μόνο WireGuard είναι πολύ ασφαλέστερη από διάσημο ανοιχτό επιλύτη.
- Χωρίς δημόσιο 53/udp
- HTTPS στον πίνακα
- Ισχυρός κωδικός διαχειριστή, αποθηκευμένος σε διαχειριστή κωδικών
- Προτιμήστε WireGuard + εσωτερικό DNS για οικογενειακές συσκευές
- Αντίγραφο ασφαλείας του AdGuardHome.yaml εκτός διακομιστή
Συμβουλές
- Αντίγραφο ασφαλείας του /opt/AdGuardHome/AdGuardHome.yaml πριν από κάθε αναβάθμιση
- Χρησιμοποιήστε αφιερωμένο υποτομέα· μην τον μοιράζεστε με άσχετο CMS
- Αν ήδη τρέχετε Caddy, αφήστε το Caddy να κατέχει τη 443 και κρατήστε το AdGuard Home στο localhost
- Τεκμηριώστε το URL DoH για τις συσκευές σας — θα το ξεχάσετε
- Συνδυάστε με τους οδηγούς σκλήρυνσης SSH και τείχους προστασίας ώστε το VPS να μην είναι μόνο «ασφαλές DNS»
Το AdGuard Home σε VPS είναι ευθύ: ελευθερώστε τη θύρα 53 τοπικά, τρέξτε τον εγκαταστάτη, ολοκληρώστε τον οδηγό με ισχυρό κωδικό διαχειριστή, βάλτε τη διεπαφή πίσω από HTTPS, ενεργοποιήστε DoH/DoT και κρατήστε το κλασικό DNS εκτός του δημόσιου διαδικτύου. Κατευθύνετε συσκευές στο κρυπτογραφημένο τελικό σημείο ή σε IP VPN, ξεκινήστε με μικρό σύνολο φίλτρων και χρησιμοποιήστε το αρχείο καταγραφής ερωτημάτων όταν κάτι σπάει. Αυτός είναι ιδιωτικός επιλύτης που πραγματικά ελέγχετε — όχι δημόσιο ανοιχτό DNS που θα βάλει το VPS σας σε βάσεις κατάχρησης.