OPNsense Forum

International Forums => German - Deutsch => Topic started by: guest18611 on July 24, 2018, 12:50:04 pm

Title: OPNsense mit Pi-Hole als DNS Server
Post by: guest18611 on July 24, 2018, 12:50:04 pm
Hallo,

Ich habe mich jetzt endlich dazu entschieden eine eigene Firewall für zuhause aufzusetzten.
Natürlich stand auch ich vor der Frage, PFsense oder OPNsense?
Aber ich denke ich habe mich richtig entschieden :P

Nätürlich habe ich beide getestet und was mir auf den ersten Blick ein wenig fehlte war das "pfBlockerNG" Plugin, aber dafür werde ich mir einen virtuellen "Pi-Hole" installieren und habe so die gleiche Lösung mit einer schönen Weböberfläche.
Aber eine Frage stellt sich mir noch, wie kriege ich es hin das der gesamte DNS Traffic auf die Pi-Hole Adresse umgeletet wird? Habe da etwas mit Port Forwarding gesehen und auch "einfache" Firewall Regeln die nur Port 53 auf die Pi-Hole Adresse zulassen und danach wird alles an Port 53 geblockt.

Aber wie wäre hier der sicherste Weg? und welchen Service muss ich dafür benutzten? Ich schätze mal den DNS Resolver?

Vielen Dank schon einmal im Vorraus


Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: mimugmail on July 24, 2018, 12:58:37 pm
Wenn alle deine Geräte im LAN DHCP verwenden kannst du auch Pi als DNS Server verteilen. Oder du trägst die IP als Forwarder bei der OPNsense ein. Dann sollte auch kein NAT oder Ähnliches notwendig sein.

Ich programmier gerade ein neues Plugins was dir die Pi Funktion mehr oder weniger bereitstellt, dauert aber sicher noch 1-2 Monate bis das fertig ist.
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: lewald on July 24, 2018, 06:30:47 pm
Hallo,

ich habe das hier genau so am laufen. Ich habe einen DHCP in der opnsense. Dort wird der pi-hole als dns zum verteilen eingetragen. Mein pi-hole hat dann diverse freie dns Server (über unseren firmen dns Server) zur Auswahl. Läuft super. Ich habe die opnsense und den pi-hole auf proxmox auf einem kleine shuttle am laufen.
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: guest18611 on July 24, 2018, 08:50:45 pm
Hallo,

Erstmal Vielen Dank für die Antworten! Das mit dem Plugin hört sich sehr Gut an!
Kann zwar keinen Code oder so etwas beitragen, aber zur gegebener Zeit testen und Feedback geben, wenn erwünscht. :)

Das mit dem DHCP Server eintragen habe ich zwar zur Zeit auch so, aber wenn meine Kinder merken das ich das über DNS blocke dann tragen Sie einfach 8.8.8.8 als DNS Server ein und schon können Sie auf die Schmuddel Seiten...deswegen war mein Gedanke einfach alle DNS Anfragen auf die Pi-Hole IP zu leiten.

Und irgendwann werden Sie das raus finden...  :o
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: monstermania on July 25, 2018, 07:20:27 am
Das mit dem DHCP Server eintragen habe ich zwar zur Zeit auch so, aber wenn meine Kinder merken das ich das über DNS blocke dann tragen Sie einfach 8.8.8.8 als DNS Server ein und schon können Sie auf die Schmuddel Seiten...deswegen war mein Gedanke einfach alle DNS Anfragen auf die Pi-Hole IP zu leiten.

Und irgendwann werden Sie das raus finden...  :o
Einfach DNS (Port 53) im jeweiligen Netzwerk nur auf die OPNsense erlauben. Dann können die lieben Kleinen als DNS-Server eintragen was Sie wollen, landet dann Alles auf der OPNsense.  ;)
Aber was machst Du auf dem Smartphone oder wenn Sie bei Freunden (im Netz) sind!?
Ich erinnere mich da sehr, sehr Dunkel an mejne Jugend.  8) Und an entsprechende 'Aufklärungsmedien' (damals Video/Zeitschriften) zu kommen war schon lange vor dem Internet kein Problem. Ach, was hat mir Teresa Orlowski in mancher Nacht für süsse Träume bereitet...  ;D ;D ;D
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: guest18611 on July 25, 2018, 07:36:18 am
Einfach DNS (Port 53) im jeweiligen Netzwerk nur auf die OPNsense erlauben. Dann können die lieben Kleinen als DNS-Server eintragen was Sie wollen, landet dann Alles auf der OPNsense.  ;)
Aber was machst Du auf dem Smartphone oder wenn Sie bei Freunden (im Netz) sind!?
Ich erinnere mich da sehr, sehr Dunkel an mejne Jugend.  8) Und an entsprechende 'Aufklärungsmedien' (damals Video/Zeitschriften) zu kommen war schon lange vor dem Internet kein Problem. Ach was hat mir Teresa Orlowski in mancher Nacht für süsse Träume bereitet...  ;D ;D ;D
Da wird die App DNS Override installiert und die OpenDNS Server angegeben, Passcode vor und einstellen das Sie keine Apps löschen können.  ;D

Aber ja Aufklärung ist der erste Schritt und einen Weg werden Sie immer finden, aber zu einfach wäre ja langweilig :P

Zurück zur Frage:
Ich erstelle also eine Firewall Regel Source=KIDS Interface, Protokoll=TCP/UDP, Destination=This Firewall und Port=53. Richtig?

Und eine block Regel brauch ich danach auch nicht mehr weil ja eh im Standart alles geblockt ist.
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: mimugmail on July 25, 2018, 09:16:32 am
DNS zur OPNsense ist per default erlaubt. Wenn du also keine Accept-Regel für DNS hast dürfte es eh schon nicht funktionieren.
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: monstermania on July 25, 2018, 11:54:33 am
Hab mal ein Screenshot meiner Regeln für mein GästeWLAN angefügt.


Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: mimugmail on July 25, 2018, 01:23:03 pm
Hab mal ein Screenshot meiner Regeln für mein GästeWLAN angefügt.

Da is dann aber DNS ins Internet erlaubt .. kann also jeder seinen lokalen DNS überschreiben
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: monstermania on July 25, 2018, 01:35:04 pm
@mimugmail
Könntest Du das bitte näher erklären!?  :o
Eigentlich hab ich gedacht, dass mit der DNS-Regel (Regel 1 aus dem Screenshot) alle DNS-Anfragen nur in dem jeweiligen Netzwerk bleiben (WLANGast). Damit landen dann alle DNS-Anfragen automatisch auf der der OPNsense.
Oder hab ich da einen Denkfehler?

Gruß
Dirk
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: mimugmail on July 25, 2018, 02:03:31 pm
Nein, du erlaubst DNS und Ntp auf die Firewall , dann blockst du das Netz auf Ziel private Adressen und dann erlaubst du alles für das Netz. Und in der letzten Regel wäre DNS auf 8.8.8.8 erlaubt.
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: monstermania on July 25, 2018, 02:34:34 pm
Nein, du erlaubst DNS und Ntp auf die Firewall , dann blockst du das Netz auf Ziel private Adressen und dann erlaubst du alles für das Netz. Und in der letzten Regel wäre DNS auf 8.8.8.8 erlaubt.
Ähh,
ja eben. Die ersten Regeln erlauben DNS und NTP nur auf die Firewall.
AFAIK wird das Regelset von Oben nach unten abgearbeitet bis die 1. passende Regel greift. Ergo kommen DNS- und NTP-Anfragen nur bis zur Frewall.
Oder liege ich da jetzt völlig daneben!?

Gruß
Dirk
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: mimugmail on July 25, 2018, 07:01:51 pm
Da liegst du leider völlig daneben. Das Zielpaket ist ja nicht die Firewall, also ist das auch kein match.
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: guest18611 on July 25, 2018, 08:23:39 pm
Hi,

Ich glaube ich habe eben die Lösung hier im Forum gefunden:
https://forum.opnsense.org/index.php?topic=5593.msg23692#msg23692

Werde das gleich mal ausprobieren  ;D
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: monstermania on July 29, 2018, 11:44:39 am
Da liegst du leider völlig daneben. Das Zielpaket ist ja nicht die Firewall, also ist das auch kein match.
Hmm,
also die Regel funktioniert. Wenn ich auf einem Client im Gäste WLAN einen beliebigen DNS Server manuell Eintrage werden die DNS Anfragen dieses Client von der OPNSense geblockt!
Nur wenn die OPNsense als DNS eingetragen ist klappt es mit der Namensauflösung.

Gruß
Dirk

PS: Die Regel kommt nicht von mir. Die hab ich aus irgendeinem Tutorial zu pfsense.
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: fabian on July 29, 2018, 12:48:50 pm
also die Regel funktioniert. Wenn ich auf einem Client im Gäste WLAN einen beliebigen DNS Server manuell Eintrage werden die DNS Anfragen dieses Client von der OPNSense geblockt!
Nur wenn die OPNsense als DNS eingetragen ist klappt es mit der Namensauflösung.

Probier mal
Code: [Select]
dig @DNSSERVER opnsense.org, wobei DNSSERVER einer der folgenden ist, wenn du von IPv4 ausgehst:
8.8.8.8, 8.8.4.4, 1.1.1.1, 9.9.9.9
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: fabian on July 29, 2018, 12:51:29 pm
ich poste das lieber auch mal hier: es gibt sonst noch DoH (DNS over HTTP(S)) und DoT (DNS over TLS), beides würde deinen Filter ohne Probleme umgehen.
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: JasMan on July 29, 2018, 12:58:30 pm
Hab mal ein Screenshot meiner Regeln für mein GästeWLAN angefügt.

Ich beziehe mich auf die Regeln im Screenshot.
Wenn ein Client im Gäste LAN einen anderen DNS Server (z.B. 4.4.4.4) manuell eingetragen hat und sich die DNS Anfrage auf den Weg macht, passiert bei dem Regelwerk folgendes:

1. Regel matcht nicht, weil das Ziel nicht die OPNsense ist
2. Regel matcht nicht, weil der Service nicht passt.
3. Regel matcht nicht, weil das Ziel nicht passt (ist ja eine öffentliche IP).
4. Regel matcht, weil alle Services zu allen IP Adressen erlaubt wird.

Somit wird DNS ins Internet erlaubt.

Man könnte jetzt eine eine Regel vor der 4. Regel einführen die da lautet:
Source: Gäste LAN
Destination: *
Service: TCP/UDP 53 (DNS)
Action: Deny

Dann würde die DNS Anfrage in Richtung Internet oder auch in alle anderen Subnetze der OPNsense geblockt. Wichtig ist, dass diese Regel nach der 1. Regel kommt. Ansonsten matcht die neue Regel vor der 1. Regel mit dem Allow. Und dann geht gar kein DNS mehr.

Aber @Raccoon ist schon auf dem richtigen Weg. Einfacher ist es ein Portforwarding für DNS einzurichten, und als Ziel den PiHole einzutragen. Dann kann sich jeder DNS Server eintragen wie er will. Sobald eine DNS Anfrage auf der Firewall erscheint, wird die an den PiHole weitergeleitet. Damit erreicht man das gewünschte Verhalten mit nur einer Regel.
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: guest18611 on July 30, 2018, 12:29:37 pm
Aber @Raccoon ist schon auf dem richtigen Weg. Einfacher ist es ein Portforwarding für DNS einzurichten, und als Ziel den PiHole einzutragen. Dann kann sich jeder DNS Server eintragen wie er will. Sobald eine DNS Anfrage auf der Firewall erscheint, wird die an den PiHole weitergeleitet. Damit erreicht man das gewünschte Verhalten mit nur einer Regel.

Ich habe dazu aber auch nochmal eine Frage...
Cypher100 hat vor kurzem hier eine Anleitung geschrieben https://forum.opnsense.org/index.php?topic=9245.msg41718#new (https://forum.opnsense.org/index.php?topic=9245.msg41718#new)

Funktioniert auch soweit bis ich eben gemerkt habe das ich noch die default any/any rule aktiviert hatte.
Also geändert auf folgende Regeln:
1. Anti Lockout
2. DNS Redirect (nach Anleitung)
3. Allow Alias INET (53,80,443) zu Destination Any

Dann funktioniert es auch aber sobald ich aus dem Alias INET den Port 53 raus nehmen geht es nicht mehr.

Ich hätte jetzt gedacht ich muss kein port 53 mehr freigeben weil ja alles mit der zweiten Regel (DNS Redirect Rule) auf die Firewall selbst weitergeleitet wird...oder sehe ich das falsch?
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: JasMan on July 30, 2018, 12:54:25 pm
Wenn Du den Dienst DNS (53) aus der dritten Regel entfernst und DNS danach nicht mehr funktioniert, zieht die zweite Regel aus irgendeinem Grund nicht.

Kontrollier mal die Redirect-Regel ob da alles korrekt ist (Interface, Destination, etc.).
Ansonsten poste mal einen Screenshot.
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: guest18611 on July 30, 2018, 06:34:05 pm
Hallo,

Hier 3 Screenshots. Ganz oben steht nur noch die Anti Lock Auto Regel.

Wenn ich jetzt eine Website aufrufe wird diese nicht aufgerufen und im Log steht:
Code: [Select]
Client-IP:56185 Firewall-IP:53 udp Default deny rule
Also wird die DNS Anfrage auf die Firewall geblockt...aber warum?  :-\

Edit:
Hab nochmal ein Screenshot vom Unbound DNS gemacht.
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: mimugmail on July 30, 2018, 06:35:54 pm
Schau Mal bitte ins Log .. da steht's bestimmt
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: guest18611 on July 30, 2018, 06:46:59 pm
Schau Mal bitte ins Log .. da steht's bestimmt

Code: [Select]
Interface          Time                 Source                 Destination         Proto        Label
lan       Jul 30 18:41:38               Client-IP:56185         Firewall-IP:53          udp         Default deny rule

Ist die Standard Block Regel am Ende, weil Port 53 ausgehend nicht offen ist, oder?
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: fabian on July 30, 2018, 07:20:18 pm
Du brauchst 'ne Regel die TCP+UDP/53 auf "Diese Firewall" erlaubt. Das ist ein pf internal, das allen IP-Adressen der Firewall entspricht, wenn du DNS über die FW erlauben willst. Wenn nur der PI-Hole ins Internet soll, musst du nur von dessen IP den Zugriff ins Internet von den oben genannten Ports erlauben.
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: guest18611 on July 30, 2018, 08:27:09 pm
Achso! Ich dachte die 127.0.0.1 wäre schon die Firewall...Der Pi-Hole Server ist unter System: Settings: General hinterlegt.

So sieht es jetzt bei mir aus. Ist die Rheinfolge so OK!? Oder muss die Allow Regel vor die Port Forward Regel?


DANKE!  :)
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: JasMan on July 30, 2018, 08:42:03 pm
Die Port-Forward Regel zieht nur, wenn jemand versucht einen anderen DNS Server als die der OPNsense anzusprechen. Daher das !LAN address, also alle Ziele außer der IP Adresse des OPNsense LAN Interface. D.h. wenn Du in Deinem Client die OPNsense LAN Interface als DNS Server eingetragen hast, matcht die PortForward Rule nicht. Somit brauchst Du noch eine Regel die den direkten DNS Traffic auf das Interface erlaubt.

So wie Du es jetzt hast sollte es funktionieren....aber sag Du es uns :)
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: fabian on July 30, 2018, 08:46:40 pm
Die Letzte Regel macht vermutlich die oberen zwei überflüssig, dazwischen musst du blockieren. Bei mir gilt übrigens: Internet ist ! RFC1918 für IPv4. IPv6 ist da schon komplizierter, da alles im Internet ist ;)
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: JasMan on July 30, 2018, 08:57:22 pm
Die Letzte Regel macht vermutlich die oberen zwei überflüssig, dazwischen musst du blockieren.

Nee, dat passt schon so.
Er will ja alle DNS Anfragen die nicht direkt an die OPNsense gehen auf die OPNsense umleiten, und die Redirect Rule steht ja ganz oben. D.h. die Anfrage wird niemals unten ankommen......naja, sollte niemals unten ankommen.

Nur die direkten Anfragen an die OPNsense sollen durchgelassen werden, was die zweite Regel macht.
Die letzte Regel sollte man auf jeden Fall verfeinern. Ein ANY -> Internet ist nicht gut.  :-X


BTW: Wieso nimmt man als Ziel "Firewall" bzw. 127.0.0.1? Der Verkehr bleibt doch eh in dem LAN. Richtg und sauberer wäre es m. E. das Objekt des LAN Adapters zu nehmen, oder?
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: guest18611 on July 30, 2018, 09:03:30 pm
Danke ihr beiden! Ja funktionieren tut es, also bei einem
Code: [Select]
host yahoo.com 8.8.8.8antwortet die IP 172.16.15.1 die ich manuell eingetragen habe.

Wieso mach die letzte Regel die anderen überflüssig? Dort ist nur Port 21, 80 und 443 erlaubt.

PS: Das mit ! RFC1918 ist genial! Habe mich schon gefragt wie ich einen Alias für "DAS Internet" erstelle  ::)
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: JasMan on July 30, 2018, 09:15:00 pm
Joh, hast Recht. Ich denke wir dachten beide "Internet" wäre das Ziel, also ein IP Bereich. Aber an der Stelle stehen ja die Services und wenn die kein DNS eingetragen haben, alles gut.  :)
Title: Re: OPNsense mit Pi-Hole als DNS Server
Post by: fabian on July 30, 2018, 10:47:28 pm
kein problem - es hat mir nur den screenshot abgeschnitten - hab die Ports nicht gesehen. Die Bilder werden etwas seltsam dargestellt (irgendwo am Ende des Posts dann ein unauffälliger Scrollbalken).