Beiträge von DKeppi

    Ich hatte bei mir auch das Problem mit dem @reboot.
    Hab zwar nicht rausgefunden an was es lag, aber es ging nicht.

    Mache das dann einfach minütlich im Nachhinein und prüfe aber vorab, ob es die Regel schon gibts, sonst hat man sie ja doppelt und dreifach...
    Nur so als Möglichkeit für dich - schau einfach mal rein wenns dich interessiert -->


    Bin auch für Verbesserungsvorschläge offen :winking_face:

    P.S.: Merke grad', dass bei mir der Port 853 noch fehlt... gleich eingefügt!

    Interessant!
    Scheinbar funktioniert also @reboot im cron schon und es liegt an der Kombination mit den iptables Einträgen.

    Nunja, jetzt wo alles Reboot sicher ist bin ich zufrieden.

    Hoffe es überlebt auch ein Update!

    Hallo Zusammen,

    leider funktionierte das mit dem Reboot und dem File in /etc/cron.d nicht - auch nicht wenn ich es regelmäßig ausführen wollte :frowning_face:

    Idee war von hier geklaut: https://github.com/StoneLabs/unifi-uxg-dnsmasq

    Habe daher die Anleitung etwas angepasst und gehe nun den Weg über die /etc/crontab und dem Aufruf des Scripts im Minutentakt (mit @reboot funktioniert das auch hier nicht). Jetzt klappt es auch nach einem Reboot und die maximale Minute die man warten muss ist OK!

    Also....der Wireguard VPN Tunnel zu ihm mit der extra Route erzeugte Nebeneffekte und plötzlich hat seine UDM kein Internet mehr verteilt und auch der AP war nicht mehr erreichbar bzw. adoptable.

    Hab daher nun auf SitetoSite via IPSec umgestellt und brauch somit auch keine extra Route mehr.
    Ist tatsächlich auch schneller und er fummelt sowieso bei mir nicht rum bzw. weiß er ja gar nicht was er in meinem Netz machen sollte :winking_face:

    Es ist jedenfalls jetzt so, dass ich per IPSEC VPN nach Hause gehe und dann auch auf seine Geräte über das IPSEC SitetoSite komme, also die perfekte Lösung! Habe dazu in den Routen des SitetoSite VPNs die Subnetzmaske meines IPSEC VPNs eingetragen mit dem ich reinkomme. Mehr brauchte es nicht! :smiling_face:


    Vielleicht könnte man aber den Zugriff von ihm zu mir etwas einschränken per Firewall, oder widerspricht das dem Sinn einer SitetoSite Verbindung!?


    Egal...ich bin so mal zufrieden!

    Mal ein wenig zur Ausgangssituation, damit ihr versteht was ich eigentlich will:

    Ich habe einen L2TP VPN Server mit Radius auf meinem UXG Lite laufen, zu dem ich mich einwandfrei verbinden kann und alle LAN Geräte erreiche.
    Damit ich auf bestimmte Geräte bei meinem Vater auch komme, habe ich einen Wireguard VPN Client am UXG-Lite angelegt, der sich dauerhaft mit seinem UDM verbindet.
    Dazu dann eine Policy Based Route damit ich nicht alles zu ihm weiterleite, sondern nur die bestimmten Aufrufe auf die IPs aus meinem HEIM Netz zu seinen Geräten (UDM, MacMini und ein Linux Server).

    (Site2Site ist keine Option, da er nicht zu mir soll, nur ich zu ihm. Abgesehen davon haben wir beide keine fixen IP's!)


    Um was geht es mir in diesem Thread nun:


    Ich würde gern, wenn ich mich von außerhalb auf meine UXG-Lite per L2TP VPN verbinde, nicht nur meine LAN Geräte erreichen können, sondern eben auch die 3 Geräte von ihm.

    Also ich komme per L2TP VPN rein und will neben meinem LAN Zugriff auch wieder per Wireguard VPN zu ihm raus können.
    Geht sowas überhaupt?


    Hoffe ich habs verständlich beschrieben :winking_face:


    Sinn dahinter:

    Wenn ich aus meinem Netz zu ihm komme, auch wenn ich per VPN verbunden bin,

    dann könnte ich seinen L2TP VPN Server abdrehen, da ich mich nie direkt verbinden muss,

    sondern alles von meinem HEIM LAN aus machen kann.

    Ich fasse nochmal zusammen was ich gemacht habe:


    1.) Beide PiHole IP's als DNS Server in den beiden VLANs HEIM & VPN hinterlegt, damit sie per DHCP verteilt werden.

    GAST lasse ich bei mir offen und ohne AdBlocker.

    Die WAN seitigen DNS Server sind auf Standard, habe aber zusätzlich unter Settings - Security den DNS Shield mit Manuell & Cloudflare aktiviert! Gehe auch in den PiHoles über Cloudflare mit DoT :winking_face:


    2.) Group mit meinen beiden PiHole IPs angelegt (von Vorteil wenn die IP's angrenzend sind, da sonst der Part --to-destination ein Problem wird)
    Im Unifi Network: Settings - Profiles - IP Group - Create New


    3.) Per SSH auf die UXG-Lite und mittels ipset list die GroupID herausfinden.


    4.) In /data/custom/ (Unterordner custom muss vorher mit mkdir angelegt werden) ein Script erstellen -> zB. mit vi DNStoPiHole.sh

    Die beiden Variablen an die eigenen Bedürfnisse anpassen!

    Die komplette Regel wird vorab mittels -C Befehl abgefragt (vor dem Doppelpipe ||) und nur angelegt wenn Sie noch nicht vorhanden ist (nach dem Doppelpipe ||)!

    5.) In /etc/crontab/ folgenden Eintrag machen

    Pfad wieder an die eigenen Bedürfnisse anpassen!

    Code
    *  *    * * *   root /data/custom/DNStoPiHole.sh

    6.) Danach ein service cron reload


    7.) Checken ob in /var/log/cron.log ein Fehler angezeigt wird.

    Falls ja, File in /etc/cron.d/ auf Fehler prüfen und erneut ein service cron reload durchführen.


    8.) Max. 1 min. warten und die Regeln sollten vorhanden sein!


    Hoffe es funktioniert bei euch auch :winking_face:


    P.S.: Die 4 Firewall Regeln die ich über die GUI am UXG-Lite angelegt habe, habe ich als zusätzliche Einschränkung gelassen!

    Danke für den Hinweis gierig! Ich prüfe das mal und schau was ich machen kann.


    Muss mich jetzt aber ohnehin zuerst noch um ein Script kümmern - überlebt wohl den Reboot/das Update nicht! :frowning_face:

    Evtl. über die crontab und dem /data Verzeichnis...


    Meine Lösung ist wie folgt...

    in /data/custom/DNStoPiHole.sh

    in /etc/cron.d/DNStoPiHole

    Code
    ## run the DNStoPiHole script
    MAILTO=""
    @reboot root /data/custom/DNStoPiHole.sh

    Danach ein


    Code
    service cron reload

    Reboot probiert, leider noch ein Problem:


    2024-04-10T16:37:25+02:00 UXG-Lite cron[1413]: Error: bad username; while reading /etc/cron.d/DNStoPiHole

    EDIT:
    Hab das Skript vom vorigen Post etwas abgespeckt, jetzt scheint es zu funktionieren!!!


    EDIT2: gierig - Die Group Bezeichnungen sind nach dem Reboot immer noch dieselben :smiling_face:

    Ich bin wieder einen Schritt weiter und habe über die per GUI gesetzten Regeln rausgefunden, wie die Groups heißen die ich erstellt habe!

    PiHoles: UBIOS_660e6f29337f6f546e45690f

    DNS Ports: UBIOS_660e7168337f6f546e45694d


    Diese müsste ich jetzt eigentlich nur mehr mit der Lösung von UHT kombinieren:
    RE: DNS-Redirect auf pi-hole


    Das würde soweit mal funktionieren:

    Code
    iptables -t nat -A PREROUTING -i br0 -p udp -m set ! --match-set UBIOS_660e6f29337f6f546e45690f src -m set ! --match-set UBIOS_660e6f29337f6f546e45690f dst --dport 53 -j DNAT --to-destination 192.168.178.5:53


    Jetzt frag ich mich nur wie ich den --to-destination Part mit meinem UBIOS_660e6f29337f6f546e45690f setze, ggf. sogar mit dem UBIOS_660e7168337f6f546e45694d als Portangabe, weil das 53 und 853 beinhaltet.






    Der POSTROUTING Part klappt bereits (muss natürlich auch mit tcp gsetzt werden) :winking_face:

    Code
    iptables -t nat -A POSTROUTING -m set ! --match-set UBIOS_660e6f29337f6f546e45690f src -m set --match-set UBIOS_660e6f29337f6f546e45690f dst -p udp --dport 53 -j MASQUERADE

    Ich denke ich habe die Lösung (ohne Port 853):

    Code
    iptables -t nat -A PREROUTING -i br0 -p udp -m set ! --match-set UBIOS_660e6f29337f6f546e45690f src -m set ! --match-set UBIOS_660e6f29337f6f546e45690f dst --dport 53 -j DNAT --to-destination 192.168.178.5-192.168.178:53

    Dasselbe natürlich noch mit tcp!

    Aber nicht mit was du da einkopiert hast, das ist nichtmal valides JSON

    Ja sorry das fehlt ein { am Anfang. Mein Fehler :winking_face:


    Wird nicht gehen, die Negation (also das !) dürfte keine IP Liste zulassen sondern nur einzelne Werte / Netze

    Da is wohl ein IPset fällig das dann referenziert wird.

    OK verstehe, so eine Liste geht also nur im positiven Fall...schade!


    Grundlagen von IPTables & ipset lernen und Verstehen. Sonst hat das kein sinn und du kopierst weiterhin

    irgendwelche Zweiteiler in dein System und wunders sich dann warum nichts mehr geht......

    Ich will wenns geht jetzt keine Ausbildung zum Netzwerktechniker machen, sondern eigentlich nur Unterstützung bei meinem speziellen Fall :winking_face:
    Abgesehen davon bin ich eher der GUI Typ und halte mich bei Dingen die über die Shell gemacht werden meistens nach Wikis oder anderen Hilfestellungen. Nachdem das so über die GUI nicht klappt muss ich diesen Weg gehen...

    Wie schaut den dein Startscript aus ? oder denkst du das die regeln sich automatisch

    irgendwo einbrennen ?

    Das wäre dann der nächste Schritt, alles zu seiner Zeit! :winking_face:


    Aber so ganz allgemein, warum der Stress und den Clients nicht gleich den richtigen DNS

    geben ?

    Ich verteile die beiden DNS IPs über den DHCP an alle Geräte. Trotzdem gibt es gerne mal Hardware, die das ignoriert und somit meine PiHoles umgeht. Aktuell werden diese Anfragen blockiert, ich würde sie aber gerne an die PiHoles weiterleiten...

    Das Masquerading.. Wozu ?

    Wie gesagt, ich habe mich da einer Quelle bedient -> https://github.com/stevejenkin…-dns-to-dual-piholes.json
    Ich ging davon aus, dass dieses Masquerading nowendig sein!


    Hab jetzt noch diesen Beitrag gefunden -> DNS-Redirect auf pi-hole
    Dort ist auch eine externe Seite verlinkt die ein Masquerade mit einer IP range macht, ist wohl eher das was es braucht denk ich.

    Trotzdem frag ich mich weiterhin wie das mit mehreren PiHoles funktionieren soll.
    Momentan fällt mir nur ein, keepalived auf beiden zu installieren, so hat man 1 Virtuelle IP die dann auf beide PiHoles verteilt.
    Ist aber auch schwer umzusetzen mit PiHole in Docker Containern - ein Update und alles ist wieder weg :frowning_face:

    Scheinbar ist sowas hier die einzige Lösung den DNS Verkehr aufs PiHole umzuleiten
    https://schinckel.net/2020/07/…s-traffic-to-the-pi.hole/

    Allerdings bei jedem Update/Reboot der UXG-Lite wieder weg...


    Was ich mich nun allerdings noch frage, wie müsste der Befehl bei mir aussehen, da ich als destination ja 2 IPs will
    Wäre das dann so zu lösen, vielleicht kann da ja jemand helfen?


    Code
    PiHole2 tcp/udp
    iptables -t nat -A PREROUTING -i br0 ! -s 192.168.178.5,192.168.178.6 -p tcp --dport 53 -j DNAT --to 192.168.178.5
    iptables -t nat -A PREROUTING -i br0 ! -s 192.168.178.5,192.168.178.6 -p udp --dport 53 -j DNAT --to 192.168.178.5
    
    # PiHole2 tcp/udp
    iptables -t nat -A PREROUTING -i br0 ! -s 192.168.178.5,192.168.178.6 -p tcp --dport 53 -j DNAT --to 192.168.178.6
    iptables -t nat -A PREROUTING -i br0 ! -s 192.168.178.5,192.168.178.6 -p udp --dport 53 -j DNAT --to 192.168.178.6
    
    iptables -t nat -A POSTROUTING -j MASQUERADE

    Hallo Zusammen,

    bin ganz neu hier, Unifi Nutzer seit ca. 6 Jahren und aus Wien/Österreich.

    Starte hier mal gleich mit einem Thema zu meinem neuen UXG-Lite als Ersatz für das alte USG-3P :winking_face:

    Ich habe 2 PiHoles am Laufen welche ich über 2 Container (https://hub.docker.com/r/shirom/pihole-sync) miteinander abgleiche.
    Nun möchte ich dass sämtlicher DNS Verkehr in meinem Netz nur über die beiden PiHoles läuft.


    Dazu habe ich in den DHCP Einstellungen des Heim & VPN Netzwerks als DNS Server meine beiden PiHole IPs angegeben.
    Soweit so gut :smiling_face:

    Zusätzlich hatte ich in meinem alten USG immer diese config.gateway.json, welche ja nun mit dem UXG-Lite nicht mehr funktioniert:


    Ich habe diverse Foren durchforstet und bin schlussendlich auf das hier gestoßen:
    https://www.reddit.com/r/pihol…ck_in_pihole_unbound_for/

    Habe somit folgende Regeln angelegt (PiHole's ist eine Gruppe mit meinen beiden IPs 192.168.178.5 und 192.168.178.6, HEIM & VPN Netzwerk eine Gruppe mit den ensprechenden CIDR notations der beiden Netze & DNS Port's eine Gruppe mit den Ports 53 und 853)



    Kann zumindest sagen das ein manueller DNS mit zB. 1.1.1.1 geblockt, aber eben auch nicht umgeleitet wird zu den PiHole's :neutral_face:


    REICHT DAS ALSO, SODASS ICH WIEDER DASSELBE HABE WIE ZUVOR UND SÄMTLICHER DNS VERKEHR ÜBER DIE PIHOLE'S LÄUFT

    ODER FEHLT ETWAS / IST ETWAS ZUVIEL? :thinking_face:


    Danke für eure Hilfe.

    Grüße
    DKeppi