(7) Pi-Hole mit Unbound – versteckt Euch!

Information:

Pi-hole ist eine freie Software mit der Funktion eines Tracking– und Werbeblockers sowie eines optionalen DHCP-Servers. Pi-hole basiert auf einem Linux-System und ist entwickelt worden für den Einsatz auf Kleinstcomputern im Sinne eines eingebetteten Systems. Verbreitet ist der Einsatz auf Computern der Raspberry-Pi-Serie. Die Software wird als DNS-Server in ein bestehendes Netzwerk integriert und steht damit allen Geräten im Netzwerk zur Verfügung, deren DNS-Einstellungen sich konfigurieren lassen. (Wikipedia)

Funktion:

pi-Hole

Wenn man im Internet eine Webseite aufruft, gibt man in der Regel eine Adresse im Browser ein z.b. www.Google.de. Dies ist allerdings nur der Name des Servers, die tatsächliche Verbindung baut sich über die IP des Servers auf. Im Internet gibt es nun DNS Server welche die Namen in die IP übersetzen. In der Regel übergibt der DHCP Server des Routers die Aufgabe allen Geräten im Netzwerk auch die IP des DNS Servers mitzuteilen.

Der Trick von pi-Hole ist es nun die Aufgabe des DNS Servers zu übernehmen. pi-Hole hat aber auch Listen mit Adressen von Werbetrackern, unerwünschten Webseiten und anderen Seiten die man selber als unerwünscht Einpflegen lassen kann. Eine Webseite besteht nicht nur aus dem sichtbarem Teil, im Hintergrund gibt es eine Menge Abfragen die einem Deine persönlich zugeschnittene Werbung zeigt. Hierzu sammeln Webseiten Unmengen an Daten über jeden und „Tracken“ (Verfolgen) einem im Internet.

Bei der Abfrage der aktuellen IP Adressen sagt unser piHole der Webseite nun das es die IP nicht gibt, der Werbetracker verläuft ins leere und die Werbung bleibt aus. Dies läuft mal mehr und mal minder gut, auf jeden Fall sind wir nun etwas geschützter im Internet unterwegs. Falls eine Liste im piHole der Meinung ist das die Webseite die man gerade benötigt nicht gut für einen ist, kann man diese auch auf eine Whitelist setzen, dh. piHole gibt trotz Sperrung der Seite die IP weiter.

Unbound

Was macht unbound nun? Also generell sind DNS Anfragen völlig ungeschützt, d.h. sie werden im Klartext übermittelt und jeder könnte die Anfrage, welche Webseite wir besuchen wollen mitlesen.

Unbound übernimmt jetzt die Aufgabe die IP Adressen zwischen zu speichern. Ist eine Adresse unbekannt oder nicht mehr gültig wird die IP abgefragt und lokal gespeichert. Zukünftige Anfragen können nun wesentlich schneller abgefragt werden, viel wichtiger aber: Von ausserhalb kann niemand mehr mitlesen welche Anfrage wir gerade ins Internet stellen.

Vorbereitung

Ihr installiert euch auf Proxmox einen LCX Container mit Ubuntu

Installation Pi-hole

Update der Systeme

sudo apt update && sudo apt dist-upgrade -y
sudo apt install curl
curl -sSL https://install.pi-hole.net | bash

Passwort ändern (das sollte man als erstes über die Kommandozeile machen um direkt ein sichere Passwort zu haben):

pihole -a -p

Aktuelle Version anzeigen lassen

pihole version

Update des Pi-hole (für später, falls man das System auf aktuellen Stand bringen möchte)

pihole -up 

Neu Konfigurieren (wenn man die Konfiguration über die kommandozeile verändern möchte, zb bei einer neuen IP)

pihole reconfigure

Der Zugriff auf die weboberfläche erfolgt über den Aufruf

http://[IP des Server]/admin

Installation unbound

Pi-hole ist mit wenigen Schritten einfach zu installieren, unbound ist auch schnell geschehen, aber da hier auch ein paar Einstellungen zu erledigen sind verweise ich auf eine sehr gute Anleitung:

https://hoerli.net/pi-hole-mit-unbound-betreiben/

Konfiguration

Zuallererst: Mein Setup ist schon speziell und nicht für jeden nötig, wer aber Spaß an sowas hat und gerne wissen möchte was bei einem los ist, der kann auch gerne mein Setup versuchen.

Standard Setup:

Netzwerk

Man erstellt sich einen pi-hole Server, das ist mit mehreren VLAN auch kein Problem, man kann den Server auch in sein Management VLAN packen, muss dann aber die Firewall für DNS Anfragen für alle Netze öffnen, da der DNS Traffic auf Port 53 läuft ist dies auch schnell über Firewall regeln einzurichten.

Die DHCP Server verbleiben auf dem Router und vergeben die jeweiligen IP Ranges. Der Nachteil hier ist leider, dass im pi-hole damit leider nicht angezeigt werden kann, welches Gerät welche Anfragen gestellt hat.

Als DNS Server gibt man jedem VLAN den jeweiligen Routing Port mit, also in eine, VLAN mit zb 192.168.10.0/24 gibt man die 192.168.10.1 an.

Was macht die UDMPro nun: Sie leitet alle DNS Anfragen an den WAN Port weiter, also dort müssen wir nun unsere weiteren Einstellungen vornehmen.

Im WAN Port unter DNS Server stellen wir nun als ersten Server die IP unseres pi-hole ein, es versteht sich von selber das wir allen Geräten über die Oberfläche der UDMPRO eine feste IP zugeordnet haben, somit ändert sich die IP später nicht, was bei einem festen Server fatal wäre. Falls der pi-hole mal nicht läuft gerade, würde der Internet Zugang für diesen Zeitraum gesperrt sein, deshalb geben wir als zweiten DNS Server einen bekannten öffentlichen Server an, dies kann zb die 8.8.8.8 oder die 1.1.1.1 sein.

Pi-hole

Im Pi-hole gehen wir als erstes auf Settings und deaktiviert links oben alle öffentlichen Server. Unter Custom Server gebt ihr nun ein bei

IP4: 127.0.0.1#5335

IPv6: ::1#5335

Falls ihr nur Pi-hole installiert habt und kein unbound nach der obigen Anleitung könnt ihr natürlich jeden beliebigen DNS Server auswählen.

‚Listen on all interfaces, permit all origins‘ kann man einschalten, in den Advanced Settings lässt man alles wie es ist, wer möchte kann das ‚Conditional forwarding’ noch für sich einschalten.

Der Dhcp Server bleibt in diesem Setup auf jeden Fall ausgeschaltet, sonst kommen sich unterschiedliche dhcp Server in die Quere.

Mein Setup:

Netzwerk:

Ich habe 4 Pi-hole Server installiert, das geht mittels Klonen von Proxmox recht fix, jedes dieser Server habe ich in ein eigenes VLAN gepackt für Managment, Main, Proxmox und Smarthome.

Update 11/2021: Das Setup habe ich nun etwas verändert. Auf Grund eines neuen Servers nutze ich nur noch einen PiHole.

Der Pihole muss dazu natürlich in der Firewall aus allen anderen Netzwerk frei gegeben werden, zumindest für Port 53.

Dann habe ich das Group Management aktiviert und eine Gruppe zu jedem VLAN erstellt.

Jetzt kommt ein wenig Arbeit, bei den Clienten muss man jeden Client, welcher oben im Drop Down verfügbar ist, einer Gruppe, also seinem VLAN, zuordnen.

Wenn man nun Domains frei gibt, landen diese erst einmal nur in der ersten Gruppe, unter Domains muss man nun einstellen, welche Gruppen, also VLAN, sollen auf diese Domain zugreifen können. So kann man das eine VLAN sperren und das andere VLAN frei geben.

An sich ist der Aufwand etwas größer, aber man hat auch nur noch ein pihole zu pflegen.

Pi-hole:

Pi-hole Listen (Adlists)

Folgende Adlists habe ich bei mir aktiviert. Dies sorgt, zum jetzigen Zeitpunkt, für 5877034 Negativ Einträge. Dem gegenüber stehen ca. 20-30 Whitelist Einträge von Webseiten die man dich vielleicht braucht. Also Recht wenig „Fehlmeldungen“ bei einer so großen Anzahl gesperrten Seiten.

https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts

https://raw.githubusercontent.com/PolishFiltersTeam/KADhosts/master/KADhosts_without_controversies.txt

https://raw.githubusercontent.com/FadeMind/hosts.extras/master/add.Spam/hosts

https://v.firebog.net/hosts/static/w3kbl.txt

https://easylist.to/easylist/easylist.txt

https://raw.githubusercontent.com/RPiList/specials/master/Blocklisten/notserious

https://raw.githubusercontent.com/RPiList/specials/master/Blocklisten/Streaming

https://raw.githubusercontent.com/RPiList/specials/master/Blocklisten/Phishing-Angriffe

https://raw.githubusercontent.com/RPiList/specials/master/Blocklisten/spam.mails

https://raw.githubusercontent.com/RPiList/specials/master/Blocklisten/Win10Telemetry

https://raw.githubusercontent.com/RPiList/specials/master/Blocklisten/easylist

https://raw.githubusercontent.com/RPiList/specials/master/Blocklisten/samsung

https://raw.githubusercontent.com/RPiList/specials/master/Blocklisten/pornblock1

https://raw.githubusercontent.com/RPiList/specials/master/Blocklisten/pornblock2

https://raw.githubusercontent.com/RPiList/specials/master/Blocklisten/pornblock3

https://raw.githubusercontent.com/RPiList/specials/master/Blocklisten/pornblock4

URL:
https://url.andrejansen.de/pihole

Dieser Beitrag wurde unter HomeLab, Proxmox abgelegt und mit , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert