Pi-Hole Ad Blocker (και dns Cacher) για ασφαλέστερο και γρηγορότερο internet

  • Αγαπητοί φίλοι και φίλες.

    Με ιδιαίτερη χαρά σας προσκαλούμε στην κοπή της πρωτοχρονιάτικης πίτας του AVClub στη Θεσσαλονίκη για το 2024 την Κυριακή 07 Απριλίου και ώρα 14.00

    Δηλώστε τη συμμετοχή σας εδώ, θα χαρούμε πολύ να σας γνωρίσουμε από κοντά.

tuxx

Supreme Member
3 January 2014
3,319
/dev/null
Pi-Hole Ad Blocker (και DNS cacher) για ασφαλέστερο και γρηγορότερο internet

Ανοίγω αυτό το νήμα να συζητήσουμε για το Pi-Hole:

https://pi-hole.net

Δεν είναι κάτι καινούριο, ούτε κάτι άγνωστο. Το αντίθετο θα έλεγα. Έχουν γίνει αρκετές αναφορές στο avclub (κάπου έχω ξαναγράψει παλιά αλλά δεν το βρίσκω), αλλά καλό θα είναι να υπάρχει κάπου η πληροφορία μαζεμένη.

- Τι είναι:

Είναι ένας συνδυασμός προγραμμάτων (κυρίως του dnsmasq δηλαδή) και configuration που εγκαθίσταται με ένα script σε μια σειρά από υποστηριζόμενα λειτουργικά συστήματα:

https://discourse.pi-hole.net/t/hardware-software-requirements/273

- Τι hardware χρειάζεται:

Το ελαφρύτερο δυνατό που να υποστηρίζει τις συγκεκριμένες Linux διανομές. Ένα Raspberry Pi πχ είναι ιδανικό.


- Τι κάνει:

Διαβαζει και εφαρμόζει ένα σύνολο adblocking/tracking/telemetry κανόνων μέσω hosts εγγραφών. Δε λειτουργεί σαν adblock, γιατί η διαφήμιση δε φτάνει ποτέ στο pc/mobile μας και αυτό έχει ως αποτέλεσμα η περιήγηση να είναι ακόμη γρηγορότερη.

Επιπρόσθετα κάνει dns caching, ώστε το resolving να είναι ακαριαίο στις σελίδες που ήδη έχουμε επισκευθεί.


- Πως το χρησιμοποιούμε:

Αρχικά το εγκαθιστούμε από γραμμή εντολών:
Code:
curl -sSL https://install.pi-hole.net | bash

αφού τελειώσουμε με τα διάφορα απλά που ρωτάει (όπως πχ. ποιους DNS θέλουμε - εγώ διαλέγω χρόνια τώρα Opendns), μπορούμε να κανουμε επιπλέον ρυθμίσεις από το web interface που θα βρούμε πατώντας την στατική ip που έχουμε δώσει στο pi-hole box μας.

Τέλος, παρότι υπάρχουν διάφοροι τρόποι να το χρησιμοποιήσουμε στα μηχανήματά μας, ο πλέον εύκολος τρόπος είναι να ορίσουμε στο κάθε PC/Laptop/Smartphone/Smart TV/Media Center που θέλουμε την ip του pi-hole box μας ως DNS server.


Αυτό ήταν. Από τη στιγμή που ορίσουμε το νέο μας pihole box ως dns server σε όσες συσκευές του σπιτιού θέλουμε, ξεκινά αμέσως και η δράση του.

Ακολουθεί μέρος του web interface για να πάρετε μια ιδέα:




Όπως θα διαπιστώσετε, το 17.6% του traffic μου απο χτες το βράδυ ήταν διαφήμιση, την οποία το pi-hole έχει μπλοκάρει και δεν έχω λάβει στα PC/Laptop/Smartphone ποτέ.

Εγώ την εγκατάσταση την έκανα σε ένα Odroid C1+ το οποίο τρέχει Armbian Ubuntu. Περισσότερα μπορείτε να δείτε εδώ:

https://github.com/archphile/pihole_stuff/blob/master/README.md


Στη συνέχεια, έκατσα και βρήκα επιπρόσθετους adblocking κανόνες(τη δουλειά την έχουν κάνει άλλοι - εγώ copy paste έκανα):

https://github.com/archphile/pihole_stuff/blob/master/adlists.list


Προς το παρόν δεν έχω πρόβλημα με false positives (έχω ενεργοποιήσει όλοες τις πηγές), αλλά αυτό θέλει μέρες για να φανεί.


Συνοψίζοντας, αν σας περισσεύει ένα board τύπου RPI και 10-15 λεπτά από το χρόνο σας, θα εκπλαγείτε από το πόσο γρηγορότερη και καθαρότερη θα γίνει η περιήγηση σας στο internet.
 
Last edited:

leo06

Supreme Member
14 October 2007
6,727
Πάτρα
Σε σχέση με το adblock σε επίπεδο ρούτερ ( pandorabox και adblock στο mi mini wifi) έχει διαφορές?
 

tuxx

Supreme Member
3 January 2014
3,319
/dev/null
Σε επίπεδο router μπορώ να το συγκρίνω μόνο με privoxy που τρέχω σε ddwrt/R7000.

Στο ddwrt τρέχω τον privoxy proxy για adlocking και παράλληλα τον dnsmasq για dhcp server/caching. Σε σχέση με αυτό το combo, το pi-hοle είναι πιο αποδοτικό σε adblocking και κυρίως πιο παραμετροποιήσιμο με εύκολο whitelisring/blacklisting, προσθαφαίρεση λιστών κλπ.

Κάτι που δεν ανέφερα παραπάνω για να μην μπερδέψω περισσότερο την κατάσταση, είναι ότι το pi-hole box μας μπορεί να αναλάβει και χρέη dhcp server αν το επιθυμούμε. Αν και εγώ το χρησιμοποιώ απλά ορίζοντας την ip του ως τον DNS server στις συσκευές του σπιτιού.
 

kiriak

Supreme Member
27 November 2006
3,949
:a0210:

μπράβο και πάλι, για την πολύ καλή παρουσίαση


θα το δοκίμαζα, αν δεν είχα στήσει πριν από 1-2 εβδομάδες, hardware firewall router, που κάνει λίγο πολύ την ίδια δουλειά (ανάμεσα σε πολλά άλλα),

διάβασα κάπου ότι μπορεί να λειτουργήσει και σαν proxy και να παίρνεις πληροφορίες για την κίνηση στοίντερνετ (ή κάνω λάθος ; ), αν και μάλλον το pi δεν το σηκώνει αυτό


όσον αφορά το κόψιμο των διαφημίσεων, δεν με πολυαπασχολεί, σε κάποια site είναι απίστευτα ενοχλητικό (με αναδυόμενα παράθυρα και βίντεο που ξεκινάνε), σε άλλα δε με πειράζουν, ίσως να τις ήθελα κιόλας για να βλέπω προσφορές ή νέα πράματα σε θέματα που με ενδιαφέρουν,
συν το ότι για όσους βλέπω θετικά θα ήθελα να βγάζυν κάτι από τις διαφημίσεις

για την ώρα στο ρούτερ , το έχω να τις κόβει, όπως ήταν στο default, και βλέπουμε,
θα μπορούσες ίσως να στείλεις ή ανεβάσεις μία σελίδα από κάποιο γνωστό site ή την αρχική από αυτό το φόρουμ, να δω τι κόβει;
 

tuxx

Supreme Member
3 January 2014
3,319
/dev/null
To pi-hole κόβει διαφημίσεις βάσει domain. Δεν ψάχνει δηλαδή patterns για να αναγνωρίσει διαφημίσεις. Η Χ διαφήμιση ή θα είναι σε κάποια λίστα και θα κόβεται, ή θα τη βλέπεις κανονικά. Επί της ουσίας, το pi-hole δημιουργεί ένα τεράστιο hosts file της μορφης (φαντάσου 100δες χιλιάδες εγγραφές όπως οι παρακάτω):

Code:
10.X.X.X 000000-0.000webhostapp.com
10.X.X.X 0-0-0-0-0-0proxy.tserv.se
10.X.X.X 000007.ru
10.X.X.X 00004563.000webhostapp.com

δηλαδή βρεθεί στο διάβα μας η ταδε διεύθυνση στα δεξιά, ανακατευθύνεται στην 10.X.X.X (η ip του pihole box).

Για το λόγο αυτό, δεν έχω σταματήσει να χρησιμοποιώ το privoxy το οποίο δουλέυει με εντελώς διαφορετική λογική. Εν ολίγοις παίζω με proxy (privoxy) και dns (pi-hole) που και τα δύο κόβουν μπόλικο πράμα το καθένα.

Εν ολίγοις αν σου δείξω screenshot θα είναι κομμένα άπειρα πράγματα.

Θα ξεκασάρω κάποια στιγμή και θα κλείσω το privoxy ώστε το screenshot να δείχνει μόνο τη δουλειά που κάνει το pi-hole.
 

kiriak

Supreme Member
27 November 2006
3,949
νομίζω ότι βάσει domain δουλέυει και το firewall router που έχω

πχ αυτά είναι τα σημερινά κομμένα, τα περισσότερα από τα κινητά της οικογένειας


[url=https://ibb.co/jSLtDH][/URL]



ισχύει ότι το Pi-Hole μπορεί να κάνει και καταγραφή των δεδομένων κίνησης στο ίντερνετ ή όχι;
 

tuxx

Supreme Member
3 January 2014
3,319
/dev/null
Re: Pi-Hole Ad Blocker (και DNS cacher) για ασφαλέστερο και γρηγορότερο internet

Για ρίξε μια ματιά εδώ:

https://pi-hole.net/2017/02/22/what-really-happens-on-your-network-find-out-with-pi-hole/

Αν εννοείς αυτό τότε ναι και μάλιστα θα διαπιστώσεις τις συσκευές σου να μιλάνε με την MS, την Nvidia, τη Xiaomi κλπ πολύ συχνότερα απ όσο φαντάζεσαι..

Sent from my MI MAX 2 using Tapatalk
 

kiriak

Supreme Member
27 November 2006
3,949
ναι, τα είχα δει αυτά, τα σηκώνει το pi?

και φαντάζομαι αυτά δίνονται μέσω DNS requests ή όχι;
οπότε πιάνεις το πόσο συχνά πχ μιλάει το xiaomi με τη βάση; ή αν κάνει σύνδεση απευθείας με την ip της xiaomi, δεν το αντιλαμβάνεται το Pi-Hole?
 

tuxx

Supreme Member
3 January 2014
3,319
/dev/null
Όλα αυτά είναι ενεργοποιημένα εξ' ορισμού. Δες πχ το top blocked domains:

Selection_009.jpg


Αν πατήσεις πάνω σε ένα από αυτά, σε πάει σε νέα σελίδα που σου λέει ποιος χτύπησε εκεί, πότε και αν το pihole έκοψε ή όχι την κίνηση.


Επίσης μπορείς να πατήσεις πάνω σε συγκεκριμένη ip συσκευής σου και να δεις τις κινήσεις που έκανε και αν αυτές έγιναν forward ή κόπηκαν από το pihole.

Να σημειωθούν τα εξής:

- Όπως ανέφερα και πριν, δεν τρέχω πάνω σε RPI, αλλά σε odroid C1+
- Ο privoxy τρέχει στο router. Αυτό το λέω, γιατί pihole + privoxy στο ίδιο RPI πχ, πολλές φορές έχουν κακά αποτελέσματα από θέμα απόδοσης.
 

kiriak

Supreme Member
27 November 2006
3,949
ok,
εκτός από τις διαφημίσεις, υπάρχουν λίστες και με άλλες κατηγορίες που μπορεί να κόβει κανείς ή όχ;
 

tuxx

Supreme Member
3 January 2014
3,319
/dev/null
Αν δεις στο λινκ που έχω δώσει παραπάνω με τις λίστες που έχω μαζέψει μέχρι στιγμής, θα βρεις αρκετό tracking & telemetry, malicious sites κλπ.

Γενικά ότι έξτρα βρίσκω θα το ποστάρω και θα ενημερώνω και το github μου.
 

avpap

Μέλος Σωματείου
30 September 2011
9,571
Αθηνα
η λιστα πως δημιουργειται/ανανεωνεται; γινεται με καποιο αυτοματοποιημενο τροπο ή πρεπει να την φτιαχνεις χειροκινητα;
ειδα οτι υπαρχει ως docker app για unraid και ενδιαφερομαι να το στησω εκει πανω
 

tuxx

Supreme Member
3 January 2014
3,319
/dev/null
Με το που το εγκαθιστάς, από τη μαμά του μπλοκάρει 100 κάτι χιλιάδες hosts. Η προσθήκη/αφαίρεση λιστών μπορεί να γίνει είτε από command line, βάζοντας τη νέα λίστα που θέλεις στο:
Code:
/etc/pihole/adlists.list

είτε χρησιμοποιώντας το web interface:

Selection_010.jpg


Όταν εσύ δώσεις τη νέα λίστα, το pihole, κάθεται, τις διαβάζει όλες, αφαιρεί τα duplicates και φτιάχνει ένα master file.

Το αρχείο που ανέβασα χτες στο github:

https://github.com/archphile/pihole_stuff/blob/master/adlists.list

ξεκινά με τις default λίστες και από ένα σημείο και μετά έχει όλα τα εξτρα.

Αν θέλεις τώρα να ενημερώσεις το σύστημα με τυχόν νέες αλλαγές από τις λίστες, τότε μπορείς πάλι να το κάνεις και με τους δύο τρόπους:

Code:
pihole -a -g

ή

Selection_011.jpg



Όταν εγραφα παραπάνω ότι χρειάζονται 10-15 λεπτά για να στηθεί, το εννοούσα. Είναι πανεύκολο και με web interface που μπορείς να κάνεις σχεδόν τα πάντα χωρίς να μπλέκεις με γραμμή εντολών αν δεν ξέρεις.
 

avpap

Μέλος Σωματείου
30 September 2011
9,571
Αθηνα
Λοιπον, το εβαλα και εγω. Υπαρχει οντως docker app που εγκαθισταται με 2 κλικ. Θελει μονο μια προσθηκη στο extra parameters για να κανει και update blacklists (μεσω του webui). Αλλαξα τον dns server που ειχα βαλει στο router με αυτο του pihole και ετσι τωρα ολο το traffic θα περναει μεσα απο εκει. Οταν παω σπιτι το βραδακι θα δοκιμασω λαπτοπ να δω τι κανει σε websurfing.
 

djx33

AVClub Addicted Member
26 July 2007
1,712
Tokyo, JP
Με το που το εγκαθιστάς, από τη μαμά του μπλοκάρει 100 κάτι χιλιάδες hosts. Η προσθήκη/αφαίρεση λιστών μπορεί να γίνει είτε από command line, βάζοντας τη νέα λίστα που θέλεις

Με λίγα λόγια βάζουμε το pihole (αντί για firewall στο ρουτερ) επειδή υποστηρίζει λίστες;
 

djx33

AVClub Addicted Member
26 July 2007
1,712
Tokyo, JP
Λοιπον, το εβαλα και εγω. Υπαρχει οντως docker app που εγκαθισταται με 2 κλικ. Θελει μονο μια προσθηκη στο extra parameters για να κανει και update blacklists (μεσω του webui). Αλλαξα τον dns server που ειχα βαλει στο router με αυτο του pihole και ετσι τωρα ολο το traffic θα περναει μεσα απο εκει. Οταν παω σπιτι το βραδακι θα δοκιμασω λαπτοπ να δω τι κανει σε websurfing.

Το είδα κι εγώ, θα το δοκιμάσω μετά...
Υπάρχει μια δοκιμαστική σελίδα στο site του pihole που είναι γεμάτη διαφημίσεις για να συγκρίνεις...
 

tuxx

Supreme Member
3 January 2014
3,319
/dev/null
Το pihole δεν είναι firewall. Απλά μπλοκάρει πολύ συγκεκριμένο traffic μέσω DNS. Δεν έχει φτιαχτεί για να αντικαταστήσει το firewall του router σου.

Σκέψου ότι είναι ένας τοπικός DNS που φιλτράρει διαφήμιση και κασάρει παράλληλα το ιστορικό των DNS requests σου για γρηγορότερη πλοήγηση.
 

djx33

AVClub Addicted Member
26 July 2007
1,712
Tokyo, JP
Το pihole δεν είναι firewall. Απλά μπλοκάρει πολύ συγκεκριμένο traffic μέσω DNS. Δεν έχει φτιαχτεί για να αντικαταστήσει το firewall του router σου.

Σκέψου ότι είναι ένας τοπικός DNS που φιλτράρει διαφήμιση και κασάρει παράλληλα το ιστορικό των DNS requests σου για γρηγορότερη πλοήγηση.

Thanks.
Το port 80 για το lighttpd μπορούμε να το αλλάξουμε (γιατί το εχω δεσμεύσει αλλού);
 

avpap

Μέλος Σωματείου
30 September 2011
9,571
Αθηνα
Thanks.
Το port 80 για το lighttpd μπορούμε να το αλλάξουμε (γιατί το εχω δεσμεύσει αλλού);

αν εχεις unraid 6.4 πλεον το καθε docker app μπορει να εχει δικη του ip, οποτε δεν χρειαζεται να μπλεξεις με πορτες. π.χ. εχω δωσει στο pihole την 192.168.1.11 και χρησιμοποιει μια χαρα την πορτα 80. Βαζεις και στο dns του ρουτερ σου το pihole και καθαρισες. Η μονη προσοχη που θελει μετα ειναι αν εχεις δωσει "χειροκινητα" ip σε διαφορες συσκευες, θα πρεπει να μπεις εκει και να αλλαξεις τους χειροκινητους dns που εχεις βαλει. Ο,τι παιρνει ip απο τον dhcp ομως θα φιλτραρεται ετσι και αλλιως απο το pihole. αν εχεις προβλημα με τα settings του docker app πες μου να σου στειλω screenshot μεσω fb messenger