knb:pihole

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
knb:pihole [2019/10/04 15:51] – angelegt Djangoknb:pihole [2020/06/09 17:02] – Externe Bearbeitung 127.0.0.1
Zeile 1: Zeile 1:
 +{{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 ====== ====== 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.
  
 +Im Tutorial benutztes Equipment, Stand Oktober 2019
 +  * Fritz!Box 7490 mit Fritz!OS 7.12
 +  * Raspberry 4 mit 4GB RAM und Raspbian Buster
 +
 +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.
 +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/]]
 +
 +Als erstes loggen wir uns im Pi ein, anschließend vergeben wir mit ''sudo su -'' root Rechte, sonst gibt es später Probleme. 
 +
 +<WRAP center round tip 60%>
 +**Die gesamte Installation muss als root durchgeführt werden**.
 +</WRAP>
 +
 +Danach muss Pi-Hole heruntergeladen werden, dazu gibt es 2 Möglichkeiten:
 +
 +1. Der automatische Download und die automatische Installation
 +Dazu muss folgender Befehl eingegeben werden:
 +
 +  # curl -SSL https://install.pi-hole.net | bash
 +
 +2. Der manuelle Download und die anschließende Installation:
 +
 +  # wget -O basic-install.sh https://install.pi-hole.net
 +  # sudo bash basic-install.sh
 +
 +Alle weiteren Installationsschritte für Pi-Hole werden hier gut und ausführlich beschrieben, ich wählte „Custom“ bei der DNS Auswahl.
 +
 +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.
 +
 +Dazu müssen folgende Befehle nacheinander ausgeführt werden:
 +
 +  # wget https://bin.equinox.io/c/VdrWdbjqyF/cloudflared-stable-linux-arm.tgz
 +  # tar -xvzf cloudflared-stable-linux-arm.tgz
 +  # sudo cp ./cloudflared /usr/local/bin
 +  # sudo chmod +x /usr/local/bin/cloudflared
 +  # cloudflared -v
 +
 +Wenn diese Befehle erledigt sind, muss noch ein Benutzer angelegt werden.
 +Das wird erledigt mit:
 +
 +  # sudo useradd -s /usr/sbin/nologin -r -M cloudflared
 +
 +Mit
 +
 +  # 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:
 +
 +<file bash /etc/default/cloudflared>...
 +
 +# Commandline args for cloudflared
 +CLOUDFLARED_OPTS=--port 5053 --upstream https://doh.ffmuc.net/dns-query
 +
 +...
 +</file>
 +Wenn das erledigt ist, mit strg+x und anschließend y speichern.
 +
 +Danach rufen wir mit
 +
 +  # nano /lib/systemd/system/cloudflared.service
 +
 +ein neues Verzeichnis auf und kopieren folgende Zeilen dort hinein:
 +<file bash /lib/systemd/system/cloudflared.service>
 +[Unit]
 +Description=cloudflared DNS over HTTPS proxy
 +After=syslog.target network-online.target
 +   
 +[Service]
 +Type=simple
 +User=cloudflared
 +EnvironmentFile=/etc/default/cloudflared
 +ExecStart=/usr/local/bin/cloudflared proxy-dns $CLOUDFLARED_OPTS
 +Restart=on-failure
 +RestartSec=10
 +KillMode=process
 +   
 +[Install]
 +WantedBy=multi-user.target
 +</file>
 +Wieder mit strg+x und anschließend y speichern.
 +
 +Mit folgenden Befehlen starten und aktivieren wir Cloudflared:
 +
 +  # sudo systemctl enable cloudflared
 +  # sudo systemctl start cloudflared
 +  # sudo systemctl status cloudflared
 +
 +Jetzt kommt für FFMuc eine weitere Besonderheit, denn wir müssen mit
 +
 +  # echo "195.30.94.28 doh.ffmuc.net" >> /etc/hosts
 +  # echo "2001:608:a01::3 doh.ffmuc.net" >> /etc/hosts
 +
 +Cloudflared noch die IP´s von FFMuc bekanntgeben und anschließend mit 
 +
 +  # systemctl restart cloudflared
 +
 +Cloudflared neustarten.
 +
 +Mit dem Befehl
 +
 +  # dig @127.0.0.1 -p 5053 heise.de
 +
 +überprüfen wir ob alles funktioniert. Die Ausgabe sollte dann so aussehen:
 +
 +{{ :knb:pihole_01.png?direct&700 |Bild: Bildschirmhardcopy Befehl dig}}
 +
 +Jetzt können wir uns beim Pi-Hole anmelden und dort die DNS-Server konfigurieren.
 +
 +Dazu 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)
 +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.
 +
 +Das ganze muss dann so aussehen:
 +
 +{{ :knb:pihole_02.png?direct&700 |Bild : Bildschirmhardcopy PiHole }}
 +
 +Ganz unten auf dieser Seite müssen wir noch die IP und den Namen vom Router eingeben, rechts unten sieht man auch den „**Save**“ Button, nicht vergessen zu speichern.
 +
 +{{ :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**“.
 +
 +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.
 +
 +{{ :knb:pihole_04.png?direct&700 |Bild : Bildschirmhardcopy Fritzbox-DNS }}
 +
 +Nach der Umstellung sollte alles, einschließlich IPTV (z.B. Entertain) funktionieren.
 +
 +Auf dem Dashboard vom Pi-Hole ''http:%%//%%<IP-des-Pi>/admin/'' kann man gut erkennen ob das Pi-Hole funktioniert.
 +
 +{{ :knb:pihole_05.png?direct&700 |Bild : Bildschirmhardcopy Pi-Hole Dashboard }}
 +
 +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:
 +
 +{{ :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: 
 +
 +  * [[https://github.com/pi-hole/pi-hole/#one-step-automated-install|]] \\
 +  * [[https://docs.pi-hole.net/guides/dns-over-https/]] \\
 +  * [[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/]] \\
 +  * 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