Ενισχύστε την Ασφάλεια σας με χρήση του AdGuard Home ως DNSSEC χωρίς Trackers σε Container
Βρείτε την
έκδοση αυτού του άρθρου εδώ Selfhosted Tutorials - TuxHouse
Στην ψηφιακή εποχή όπου ζούμε, οι επιθέσεις και η συλλογή δεδομένων βρίσκονται παντού. Σε όσα περισσότερα “layers” ασφαλιζόμαστε, τόσο περισσότερο ασφαλείς είμαστε κι εμείς οι ίδιοι αλλά και τα δεδομένα μας. Ιδιαίτερα στον business κόσμο όπου τόσο οι διεθνείς κανονισμοί αλλά και οι πιστοποιήσεις όπως ISO27001 απαιτούν όλο και πιο αυστηρά μέτρα, η προσθήκη ενός φίλτρου σε επίπεδο DNS θα μπορούσε να θωρακίσει επιπλέον τις ψηφιακές υποδομές ενός Οργανισμού, φιλτράροντας περιεχόμενο που ενδεχομένως να προέρχεται από κακόβουλες ιστοσελίδες, διαφημίσεις και trackers. Με αυτό τον τρόπο, βελτιώνουμε την ασφάλεια και την ιδιωτικότητά μας.
Σε αυτό τον οδηγό, θα στήσουμε τον δικό μας “διαμεσολαβητή” ως DNS, με υποστήριξη μάλιστα DNSSEC και native DoH/DoT/DoQ, με στόχο:
-
Να φιλτράρεται πιθανό κακόβουλο περιεχόμενο του διαδικτύου,
-
Να αποκλείονται επικίνδυνες ιστοσελίδες,
-
Να αποκλείεται ενδεχομένως βλαβερό περιεχόμενο οπού βρίσκεται μέσα σε ιστοσελίδες, με την μορφή διαφημίσεων ή trackers,
-
Να αποκλείονται κακόβουλες διαφημίσεις αλλά και πιθανοί trackers που έχουν ως στόχο να συλλέξουν ψηφιακά αποτυπώματα,
-
Native parental controls και per-client rules για επιχειρήσεις με παιδιά ή/και strict policies.
Για να επιτευχθούν οι παραπάνω στόχοι, θα χρησιμοποιήσουμε το AdGuard Home ως ένα container για ευκολότερη υιοθέτηση στο δίκτυό μας.
Το Adguard αποτελεί μία παρόμοια λύση με το Pihole οπου είχαμε παρουσιάσει σε προηγούμενο οδηγό, ωστόσο προσφέρει πολύ περισσότερα χαρακτηριστικά.
Έτσι, από την στιγμή που εγκαταστήσουμε σε κάποια συσκευή του δικτύου μας (ή μέσω του VPN μας) το AdGuard Home, τότε θα μπορούμε πολύ εύκολα απλά καλώντας την IP του συστήματος αυτού ως DNS είτε από τον router είτε από κάθε συσκευή, να αποκλείουμε επικίνδυνες διαφημίσεις και trackers.
Σε αυτό το σημείο, θα πρέπει να ευχαριστήσω ιδιαιτέρως την Ελισάβετ Κωνσταντοπούλου όπου μου δάνεισε το iPhone της για τα πειράματα οπού απαιτούνταν για τις ανάγκες αυτού του οδηγού.
Σε ποια Container Engines ο οδηγός έχει δοκιμαστεί ως προς την συμβατότητά του;
Για όποιον θέλει να μάθει τι είναι το Docker, οπού αποτελεί την μεγάλη “ναυαρχίδα” των Containers, υπάρχει ήδη στο Linux-User.gr ένας πολύ αναλυτικός οδηγός: , οπού εμπεριέχει αναλυτικότερες πληροφορίες σχετικά με τις τεχνολογίες αυτές.
Ας ξεκινήσουμε:
Η διαδικασία είναι εξαιρετικά πολύ απλή μιας και έχω ετοιμάσει docker-compose.yml αρχείο, όπως είχαμε δει και στο Access Point Docker Container ή στο Jellyfin αλλά και στο Wireguard.
Αυτό που έχουμε να κάνουμε είναι να δημιουργούμε έναν φάκελο, όπου μέσα σε αυτόν, δημιουργούμε ένα αρχείο με όνομα docker-compose.yml:
nano docker-compose.yml
Και κάνουμε copy-paste το παρακάτω:
services:
adguard:
container_name: adguard
image: adguard/adguardhome:latest
ports:
- "53:53/tcp"
- "53:53/udp"
- "5353:80/tcp" # Το adguard θα δουλεύει ως http στην πόρτα 5353 και θα είναι διαθέσιμο - μπορούμε να βάλουμε reverse proxy για χρήση tls σε https
- "853:853/tcp" # Native DoT
- "784:784/udp" # Native DoH
- "8853:8853/udp" # Native DoQ
environment:
TZ: 'Europe/Athens'
volumes:
- './workdir:/opt/adguardhome/work'
- './confdir:/opt/adguardhome/conf'
restart: unless-stopped
Και δημιουργούμε το container δίνοντας από τερματικό: (ενώ βρισκόμαστε στον φάκελο όπου βρίσκεται το docker-compose.yml):
docker-compose up -d # Για Docker
podman-compose up -d #Για Podman
Αφού φτιάξουμε το Container
Το AdGuard Home θα ξεκινήσει να λειτουργεί κανονικά και είναι προσβάσιμο από οποιαδήποτε συσκευή διαθέτει έναν browser, μέσω της θύρας 5353 ή /admin.
Στην περίπτωσή μου, η IP του server μου είναι η 192.168.8.212. Συνεπώς, από browser δίνω:
http://Η_ΙΡ_ΣΟΥ:5353/admin
http://192.168.8.212:5353/admin
Αν έχετε ορίσει reverse proxy έτσι ώστε να έχετε TLS και https, δίνουμε το αντίστοιχο link όπου έχει οριστεί (θα δείξουμε παρακάτω πώς μπορεί να γίνει αυτό). Στην περίπτωση μου, έδωσα https://adguard.v.flix/.
Αρχικά θα σας ζητήσει να κάνετε setup wizard, όπου ορίζετε admin password και upstream DNS (π.χ. Cloudflare). Η αρχική οθόνη του AdGuard Home είναι αρκετά κατατοπιστική και μας δίνει τις παρακάτω πληροφορίες: τον αριθμό των αιτημάτων, των αποκλεισμών, ποσοστό blocking, clients και graphs.
Το AdGuard Home μας σε αυτό το σημείο είναι έτοιμο να αποκλείσει κακόβουλες διαφημίσεις και trackers. Το μόνο που έχετε να κάνετε είναι να δηλώσετε ως DNS το AdGuard στις συσκευές σας.
Αλλαγή DNS στον Router:
Ο ορισμός του Adguard ως DNS σε επίπεδο Router αποτελεί συνήθως την βέλτιστη λύση, διότι όλες οι συσκευές που θα συνδέονται σε αυτόν, τυπικά θα παίρνουν αυτόματα ως DNS το Adguard. Η διαδικασία αλλάζει από Router σε Router, ωστόσο ενδεικτικά θα αφήσω ένα screenshot από τον δικό μου Router (ΗΑ35) οπού η ρύθμιση αυτή βρίσκεται εντός των ρυθμίσεων του DHCP:
Αλλαγή DNS σε GNU/Linux:
Από τον network manager, ορίζουμε τον custom DNS στο πεδίο DNS:
Aξίζει να επισημανθεί πως καλό θα ήταν να θέσουμε και εναλλακτικό κάποιον άλλον DNS σε περίπτωση όπου το Adguard μας δεν είναι διαθέσιμο, π.χ., με κόμμα μπορούμε να δηλώσουμε επιπλέον και το DNS της Cloudflare ως 1.1.1.1 .
Αλλαγή DNS σε Android:
Στις Ρυθμίσεις/Δίκτυα & Διαδίκτυo/Διαδίκτυο, επιλέγουμε το Access Point όπου θέλουμε και επιλέγουμε Τροποποίηση.
Και ορίζουμε ως DNS 1 τον DNS όπου θέλουμε!
Αλλαγή DNS σε iOS:
Σε αυτό το σημείο πρέπει να επισημανθεί πώς από iOS 16 και άνω, για να λειτουργήσει το Adguard, θα πρέπει να έχουμε ενεργοποιήσει το DNSSEC στο Adguard μας.
Σε iOS μέχρι έκδοση 15 (δοκιμασμένο με iPhone SE πρώτης γενιάς), το Adguard λειτουργεί κανονικά και σε σκέτο DNS.
Έπειτα, στις ρυθμίσεις του iOS για Wifi, επιλέγουμε Configure DNS από Automatic σε Manual και προσθαφαιρούμε τους DNS servers όπου επιθυμούμε.
Αλλαγή DNS σε Windows:
Στις Ρυθμίσεις του δικτύου όπου είμαστε συνδεδεμένοι, επιλέγουμε στο Εκχώρηση διακομιστή DNS και το ορίζουμε από Αυτόματα (DHCP) σε Μη αυτόματα. Έπειτα, προσθέτουμε τον DNS όπου επιθυμούμε.
Άλλα Χρήσιμα χαρακτηριστικά του Adguard?
Από Privacy settings, ρυθμίστε logging levels για privacy ή monitoring.
Χρησιμοποιείτε iPhone? Ενεργοποιήστε DNSSEC
Ενεργοποιήστε από DNS settings για anti-poisoning. Απαραίτητο για iOS, ωφέλιμο παντού.
Parental Controls & Themes
Built-in safe search, per-client rules, dark theme από UI.
Reverse Proxy για χρήση TLS με https στο Adguard
Το Adguard πρόκειται για μία κρίσιμη υπηρεσία όπου θα τρέχει εντός ενός οργανισμού ή οικιακού δικτύου, συνεπώς, θα πρέπει να προστατευτεί η ακεραιότητα του. Χρησιμοποιώντας το Adguard από http κάποιος κακόβουλος όπου παρακολουθεί το δίκτυο, θα μπορούσε να καταγράψει για παράδειγμα τον κωδικό πρόσβασης μας στο Adguard.
Για να αποφευχθεί αυτό, μπορούμε να χρησιμοποιήσουμε έναν reverse Proxy ώστε να βγαίνει εκτός το Adguard μόνο ως https με TLS.
Σε αυτό τον οδηγό θα χρησιμοποιήσουμε το Caddy για να το επιτύχουμε αυτό:
Προσθέτουμε στο Caddyfile:
adguard.v.flix {
tls internal
encode zstd gzip
redir / /admin{uri}
reverse_proxy 172.17.0.1:5353
}
Και για τους υπόλοιπους Reverse Proxies, η διαδικασία είναι αρκετά παρόμοια. Στην πραγματικότητα, το point είναι να οριστεί η ΙΡ και πόρτα όπου τρέχει το Adguard καθώς και να κάνει ανακατεύθυνση στο /admin, όπως δείξαμε και από πάνω όσο ήταν σκέτη ΙΡ ως http. Σύντομος οδηγός εγκατάστασης caddy2 server, reverse proxy και αυτόματο ssl στο raspberry
Μείνετε συντονισμένοι και έρχονται πολλά ακόμη selfhosted άρθρα :).







