knb:pihole

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
knb:pihole [2019/10/05 17:27] Djangoknb:pihole [2022/08/02 20:08] (aktuell) awickert
Zeile 1: Zeile 1:
-====== Raspberry 4 mit Pi-Hole und DOH über FFMuc nutzen ======+{{htmlmetatags>metatag-robots=(index,follow)  
 +metatag-description=(Raspberry 4 mit Pi-Hole und DOH über FFMuc nutzen) 
 +}} 
 +====== Raspberry 4 mit Pi-Hole und DoH über FFMuc nutzen ======
 {{ :ffmuc_logo.png?nolink&150|Bild: Freifunk München Logo}} {{ :ffmuc_logo.png?nolink&150|Bild: Freifunk München Logo}}
  
-In diesem Artikel beschreibt **[[https://chat.ffmuc.net/freifunk/messages/@fritz_muc|fritz_muc]]** wie man mit einem **Raspberry PI 4** mit **Pi_Hole** und **FFMUC** nutzen kann.+In diesem Artikel beschreibt **[[https://chat.ffmuc.net/freifunk/messages/@thegoliath|thegoliath]]** wie man mit einem **Raspberry Pi 4** mit **Pi_Hole** und **FFMUC DNS** nutzen kann.
  
-Im Tutorial benutztes Equipment, Stand Oktober 2019 +Im Tutorial benutztes Equipment, Stand Januar 2022 
-  * Fritz!Box 7490 mit Fritz!OS 7.12 +  * AVM FRITZ!Box 7490 mit Fritz!OS 7.12 
-  * Raspberry 4 mit 4GB RAM und Raspbian Buster+  * Raspberry 4 mit 4 GB RAM und Raspbian Buster (Raspberry Pi OS Bullseye wird natürlich auch unterstützt und sollte ohne Modifikationen funktionieren)
  
-Es wird in den weiteren Schritten davon ausgegangen, dass auf dem Pi bereits ein funktionierendes Betriebssystem installiert ist. Ebenso benötigt der Pi eine feste (statische) IPv4 im Heimnetz. +Es wird in den weiteren Schritten davon ausgegangen, dass auf dem Pi bereits ein funktionierendes Betriebssystem (z.B. Raspbian/Raspberry Pi OS) installiert ist. Ebenso benötigt der Pi eine feste (statische) IPv4 im Heimnetz. 
-Muss noch ein Betriebssystem installiert werden, so empfiehlt sich diese Seite, da hier gleichzeitig ein SSH Zugang mit aktiviert wird.+Muss noch ein Betriebssystem installiert werden, so empfiehlt sich diese Seite, da hier gleichzeitig ein SSH Zugang mit aktiviert wird:
  
 [[https://www.tutonaut.de/anleitung-raspberry-pi-ohne-monitor-und-tastatur-headless-einrichten/]] [[https://www.tutonaut.de/anleitung-raspberry-pi-ohne-monitor-und-tastatur-headless-einrichten/]]
  
-Als erstes loggen wir uns im Pi ein, anschließend vergeben wir mit ''sudo su -'' root Rechte, sonst gibt es später Probleme. +Als erstes loggen wir uns auf dem Pi ein, anschließend geben wir uns mit ''sudo su -'' root Rechte, sonst gibt es später Probleme. 
  
 <WRAP center round tip 60%> <WRAP center round tip 60%>
Zeile 24: Zeile 27:
 Dazu muss folgender Befehl eingegeben werden: Dazu muss folgender Befehl eingegeben werden:
  
-  # curl -SSL https://install.pi-hole.net | bash+  # curl -sSL https://install.pi-hole.net | bash
  
 2. Der manuelle Download und die anschließende Installation: 2. Der manuelle Download und die anschließende Installation:
Zeile 35: Zeile 38:
 https://www.heise.de/tipps-tricks/Pi-Hole-auf-dem-Raspberry-Pi-einrichten-so-geht-s-4358553.html https://www.heise.de/tipps-tricks/Pi-Hole-auf-dem-Raspberry-Pi-einrichten-so-geht-s-4358553.html
  
-Wenn die Installation von Pi-Hole soweit abgeschlossen ist, widmen wir uns der Installation von Cloudflared. Das wird benötigt, um über Pi-Hole per DNS-over-https (DOH) Anfragen abzuwickeln.+Wenn die Installation von Pi-Hole soweit abgeschlossen ist, widmen wir uns der Installation des Cloudflared-DienstesDieser wird benötigt, um über Pi-Hole per DNS-over-HTTPS (DoH) Anfragen verschlüsselt abzuwickeln.
  
 Dazu müssen folgende Befehle nacheinander ausgeführt werden: Dazu müssen folgende Befehle nacheinander ausgeführt werden:
  
-  # wget https://bin.equinox.io/c/VdrWdbjqyF/cloudflared-stable-linux-arm.tgz +  # wget https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-arm64 
-  # tar -xvzf cloudflared-stable-linux-arm.tgz +  # sudo cp ./cloudflared-linux-arm64 /usr/local/bin/cloudflared
-  # sudo cp ./cloudflared /usr/local/bin+
   # sudo chmod +x /usr/local/bin/cloudflared   # sudo chmod +x /usr/local/bin/cloudflared
   # cloudflared -v   # cloudflared -v
Zeile 52: Zeile 54:
 Mit Mit
  
-  # nano /etc/default/cloudflared+  # sudo nano /etc/default/cloudflared
  
-wechseln wir in das entsprechende Verzeichnis, dort müssen wir, <fc #ff0000>abweichend von der ursprünglichen Installation</fc>für FFMuc folgende Zeilen einfügen:+öffnen wir die Standard-Konfigurationsdate des Cloudflared-Dienstes. <fc #ff0000>Abweichend von der ursprünglichen Installation</fc> müssen wir für die DoH-Server von FFMUC folgende Zeilen einfügen:
  
 <file bash /etc/default/cloudflared>... <file bash /etc/default/cloudflared>...
  
 # Commandline args for cloudflared # Commandline args for cloudflared
-CLOUDFLARED_OPTS=--port 5053 --upstream https://doh.ffmuc.net/doh-query+CLOUDFLARED_OPTS=--port 5053 --upstream https://doh.ffmuc.net/dns-query
  
 ... ...
 </file> </file>
-Wenn das erledigt ist, mit strg+x und anschließend y speichern.+Wenn das erledigt ist, mit der Tastenkombination STRG + x und anschließend durch Drücken der Taste die Datei speichern.
  
 Danach rufen wir mit Danach rufen wir mit
Zeile 69: Zeile 71:
   # nano /lib/systemd/system/cloudflared.service   # nano /lib/systemd/system/cloudflared.service
  
-ein neues Verzeichnis auf und kopieren folgende Zeilen dort hinein:+eine neue Datei für das z.B. Starten & Stoppen des Cloudflared-Dienstes auf und kopieren dort folgende Zeilen hinein:
 <file bash /lib/systemd/system/cloudflared.service> <file bash /lib/systemd/system/cloudflared.service>
 [Unit] [Unit]
 Description=cloudflared DNS over HTTPS proxy Description=cloudflared DNS over HTTPS proxy
 After=syslog.target network-online.target After=syslog.target network-online.target
-   +
 [Service] [Service]
 Type=simple Type=simple
Zeile 83: Zeile 85:
 RestartSec=10 RestartSec=10
 KillMode=process KillMode=process
-   +
 [Install] [Install]
 WantedBy=multi-user.target WantedBy=multi-user.target
 </file> </file>
-Wieder mit strg+x und anschließend y speichern.+Wieder mit der Tastenkombination STRG + x und anschließend durch Drücken der Taste die Datei speichern. 
 +Nun müssen wir noch die Berechtigungen für den `cloudflared` Nutzer anpassen 
 +  # sudo chown cloudflared:cloudflared /etc/default/cloudflared 
 +  # sudo chown cloudflared:cloudflared /usr/local/bin/cloudflared
  
 Mit folgenden Befehlen starten und aktivieren wir Cloudflared: Mit folgenden Befehlen starten und aktivieren wir Cloudflared:
Zeile 95: Zeile 100:
   # sudo systemctl status cloudflared   # sudo systemctl status cloudflared
  
-Jetzt kommt für FFMuc eine weitere Besonderheit, denn wir müssen mit+Jetzt kommt für FFMUC eine weitere Besonderheit, denn wir müssen mit
  
-  # echo "195.30.94.28 doh.ffmuc.net" >> /etc/hosts +  # echo "5.1.66.255 doh.ffmuc.net" >> /etc/hosts 
-  # echo "2001:608:a01::doh.ffmuc.net" >> /etc/hosts+  # echo "185.150.99.255 doh.ffmuc.net" >> /etc/hosts 
 +  # echo "2001:678:e68:f000:: doh.ffmuc.net" >> /etc/hosts 
 +  # echo "2001:678:ed0:f000:: doh.ffmuc.net" >> /etc/hosts
  
-Cloudflared noch die IP´s von FFMuc bekanntgeben und anschließend mit +dem Cloudflared-Dienst noch die IP'von den FFMUC-DoH-Servern bekanntgeben und anschließend mit 
  
   # systemctl restart cloudflared   # systemctl restart cloudflared
Zeile 115: Zeile 122:
  
 Jetzt können wir uns beim Pi-Hole anmelden und dort die DNS-Server konfigurieren. Jetzt können wir uns beim Pi-Hole anmelden und dort die DNS-Server konfigurieren.
 +Im Normalfall ist das Webinterface unter der IPv4-Adresse eures Raspberry Pis erreichbar (z.B. http:%%//%%<IP-des-Pi>/admin)
  
-Dazu wechseln wir zu „**settings**“ dort zum Reiter „**DNS**“ und geben bei +Nun wechseln wir zu „**Settings**“ dort zum Reiter „**DNS**“ und geben bei 
-„**Custom 1**“ die IP //**127.0.0.1#5053**// ein. Damit verweisen wir auf Cloudflared. (Localhost) +„**Custom 1 (IPv4)**“ die IP-Adresse //**127.0.0.1#5053**// ein. Damit verweisen wir auf Cloudflared. (Localhost) 
-Wenn man später auf dem Dashboard unter "**Queries answered by**" "**Localhost**" sieht, weiss man dass die Anfragen über Cloudflared und somit über den DNS von FFMUc gelaufen sind.+Wenn man später auf dem Dashboard unter "**Queries answered by**" "**Localhost**" sieht, weiß mandass die Anfragen über Cloudflared und somit über den DNS von FFMUC gelaufen sind.
  
 Das ganze muss dann so aussehen: Das ganze muss dann so aussehen:
Zeile 128: Zeile 136:
 {{ :knb:pihole_03.png?direct&700 |Bild : Bildschirmhardcopy PiHole }} {{ :knb:pihole_03.png?direct&700 |Bild : Bildschirmhardcopy PiHole }}
  
-In unserem Fall bleibt der Router der DHCP-Server, nur die externen DNS-Abfragen laufen über den Pi!!!! Anschließend müssen wir noch unserem Router mitteilen, dass die DNS-Abfragen in Zukunft über den Pi laufen. Dazu loggen wir uns auf unserem Router (hier FB 7490) ein und gehen dort zu „**Internet -> Zugangsdaten -> DNS-Server**“.+In unserem Fall bleibt der Router der DHCP-Server, nur die externen DNS-Abfragen laufen über den Pi!!!! Anschließend müssen wir noch unserem Router mitteilen, dass die DNS-Abfragen in Zukunft über den Pi laufen. Dazu loggen wir uns auf unserem Router (hier eine AVM FRITZ!Box 7490) ein und gehen dort zu „**Internet -> Zugangsdaten -> DNS-Server**“.
  
-Dort tragen wir die <fc #ff0000>statische IPv4 Heimnetzadresse</fc> (<fc #ff0000>in diesem Fall</fc> die 10.99.1.11) sowie die **Linklocal IPv6 Adresse des Pi** ein. Bei der Fritz!Box muss man jeweils beide Felder benutzen, sonst meckert sie beim abspeichern. Die Linklocal beginnt in der Regel mit **fe80**, sie findet man unter „**Heimnetz -> Netzwerk**“, wenn man auf den Stift rechts neben dem Netzwerkgerät klickt.+Dort tragen wir die <fc #ff0000>statische IPv4 Heimnetzadresse</fc> (<fc #ff0000>in diesem Fall</fc> die 10.99.1.11) sowie die **Link-Local IPv6 Adresse des Pi** ein. Bei der Fritz!Box muss man jeweils beide Felder benutzen, sonst meckert sie beim abspeichern. Die Link-Local beginnt in der Regel mit **fe80**, sie findet man unter „**Heimnetz -> Netzwerk**“, wenn man auf den Stift rechts neben dem Netzwerkgerät klickt.
  
 {{ :knb:pihole_04.png?direct&700 |Bild : Bildschirmhardcopy Fritzbox-DNS }} {{ :knb:pihole_04.png?direct&700 |Bild : Bildschirmhardcopy Fritzbox-DNS }}
Zeile 142: Zeile 150:
 Bitte auch überprüfen ob sich das Pi-Hole die Updatelisten holt. Dazu nach dem Einloggen auf den Pi-Hole unter "**Tools -> Update Gravity**" im rechten großen Fenster auf "**UPDATE**" klicken und warten. Wenn alles funktioniert sollte es so aussehen: Bitte auch überprüfen ob sich das Pi-Hole die Updatelisten holt. Dazu nach dem Einloggen auf den Pi-Hole unter "**Tools -> Update Gravity**" im rechten großen Fenster auf "**UPDATE**" klicken und warten. Wenn alles funktioniert sollte es so aussehen:
  
-BILD UPDATELIST EINFÜGEN+{{ :knb:pihole_06.png?direct&700 |Bild : Bildschirmhardcopy Pi-Hole Updateliste }}
  
 +Unter folgender Website gibt es noch weitere Ergänzungslisten für das Pi-Hole:
 +
 +  * [[https://firebog.net]]
 +
 +Die Listen kann man unter "**Settings -> Blocklists**" einfügen und speichern.
 + 
 Als Quellen wurden verwendet:  Als Quellen wurden verwendet: 
  
   * [[https://github.com/pi-hole/pi-hole/#one-step-automated-install|]] \\   * [[https://github.com/pi-hole/pi-hole/#one-step-automated-install|]] \\
-  * [[https://docs.pi-hole.net/guides/dns-over-https/]] \\+  * [[https://docs.pi-hole.net/guides/dns/cloudflared/]] \\
   * [[https://www.heise.de/tipps-tricks/Pi-Hole-auf-dem-Raspberry-Pi-einrichten-so-geht-s-4358553.html]] \\   * [[https://www.heise.de/tipps-tricks/Pi-Hole-auf-dem-Raspberry-Pi-einrichten-so-geht-s-4358553.html]] \\
   * [[https://www.tutonaut.de/anleitung-raspberry-pi-ohne-monitor-und-tastatur-headless-einrichten/]] \\   * [[https://www.tutonaut.de/anleitung-raspberry-pi-ohne-monitor-und-tastatur-headless-einrichten/]] \\
-  * sowie eigene Bilder und die Hilfe vom FFMuc-Team, Danke dafür!! +  * sowie eigene Bilder und die Hilfe vom FFMUC-Team, Danke dafür!!
  • knb/pihole.txt
  • Zuletzt geändert: 2022/08/02 20:08
  • von awickert