Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Client OpenVPN "aufzwingen"

    Scheduled Pinned Locked Moved Deutsch
    13 Posts 4 Posters 2.9k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • B
      benjsing
      last edited by

      Hallo,

      ich kämpfe ungelogen seit heute Vormittag mit verschiedenen OpenVPN-Ansätzen und frage nun einfach mal, ob mein (Laien-)Vorgehen überhaupt richtig ist.

      Was ich möchte:

      Einem einzigen Gerät in meinem Netzwerk soll vorgeschrieben werden, dass alle seine Verbindungen über einen VPN Tunnel laufen. Sämtliche anderen Devices im Netzwerk sollen weiterhin ganz normal ohne VPN online gehen.

      Wie kann ich das bewerkstelligen? Zuerst hatte ich VPN direkt auf dem Gerät (Ubuntu) implementiert. Das gefällt mir nun aber doch nicht, ich würde es gerne über pfSense lösen. Per Suche habe ich keine Möglichkeit gefunden, einem Client vorzuschreiben, dass es sich via pfSense, welches nur für diesen Client ebenfalls als Client auf dem VPN Server verbunden ist, verbindet.

      Danke im Voraus für Eure Hilfe.

      1 Reply Last reply Reply Quote 0
      • L
        l4k3k3m4n
        last edited by

        Kurz:

        1. OpenVPN Client in pfsense einrichten
        2. Interface für den Tunnel herstellen
        3. NAT für das Interface aktivieren
        4. FW Regel erstellen für den Client mit dem Gateway des Tunnels

        Lang:

        Eine der zahlreichen Anleitungen im Netz verwenden. Fast alle großen VPN Anbieter bieten sowas an.
        Kurz google benutzt:

        https://support.hidemyass.com/hc/en-us/articles/202720876-pfSense-configuration-for-routing-all-traffic-via-VPN

        1 Reply Last reply Reply Quote 0
        • B
          benjsing
          last edited by

          Danke! Punkt 1. war kein Problem. An Punkt 2. hatte ich vorhin schon gar nicht gedacht. Auch das hat problemlos funktioniert.

          Bei NAT und Firewall Regel weiß ich aber nicht, was ich genau eintragen soll. (ich plane seit geraumer Zeit, endlich mal eine VM mit pfSense einzurichten, auf der ich rumprobieren kann… in diesem Fall wäre es dringend. FAlls das nur ein paar kurze Zeilen sind würde ich mich sehr über Hilfe freuen).

          1 Reply Last reply Reply Quote 0
          • JeGrJ
            JeGr LAYER 8 Moderator
            last edited by

            Nunja ganz einfach muss für das abgehende Gerät oder Netz natürlich ein Outbound NAT Eintrag angelegt werden, damit das Gerät sauber mit der Adresse des Tunnels umgeschrieben ins Netz geht. Ansonsten würde es ja nicht gehen, dass mehrere Geräte abgehend das VPN nutzen und du müsstest das VPN auf dem Endgerät machen. Ergo einfach eine Regel wie fürs WAN konfigurieren, nur eben mit OVPN als Interface und der Interface Adresse.

            Firewall Regel ist dann recht simpel, wenn du nach einer der Anleitungen vorgegangen bist, wurde ja ein dummy-Interface fürs VPN erstellt und dazu ein Gateway mit dynamischer Gegenstelle. Dieses Gateway kann bei Firewall Regeln ausgewählt werden unter Advances Options der Regel (statt default dann einfach GW_VPN oder wie immer das heißt bei dir). Damit wird bei einem Match der Regel das Gateway auf den VPN Tunnel gesetzt und zwingt das Gerät via VPN ins Netz. Siehe den Link oben bei "Interfaces" und "Gateway".

            Grüße

            Don't forget to upvote 👍 those who kindly offered their time and brainpower to help you!

            If you're interested, I'm available to discuss details of German-speaking paid support (for companies) if needed.

            1 Reply Last reply Reply Quote 0
            • V
              viragomann
              last edited by

              Nein, nein, nicht so kompliziert. Der OT möchte das Thema möglichst gründlich vorgekaut haben.  ;)
              Also versuch ich das mal simpel darzustellen:

              Outbound NAT:
              Gehe nach Firewall > NAT > Outbound, wähle "Hybrid Outbound NAT rule generation" und klick Save.
              Füge mit dem + darunter eine neue Regel hinzu:
              Interface: <das vpn="" interface,="" das="" du="" zuvor="" erstellt="" hast="">Source: Network, Address: dein LAN Netz oder auch nur die IP des betroffenen Client /32
              Den Rest auf den Defaultwerten lassen, einen Namen vergeben und speichern.
              Apply changes

              FW Regel:
              Firewall > Rules > LAN
              Standardmäßig hast du da eine IPv4 any to any allow-rule.
              Kopiere diese mit einem Klick auf das + rechts davon. Unter Source wähle "Single host" und trage die IP des betroffenen Client ein.
              Ändere die Beschreibung, gehe runter zu Gateway und wähle das VPN Gateway aus und speichere die Regel.
              Verschiebe die Regel nach oben, so dass sie als erstes zutrifft.
              Apply changes

              Eine bebilderte Anleitung gibt es auch hier: https://forum.pfsense.org/index.php?topic=76015.0</das>

              1 Reply Last reply Reply Quote 0
              • B
                benjsing
                last edited by

                Vielen Dank, Ihr habt mir schon sehr weitergeholfen.

                Nein, nein, nicht so kompliziert. Der OT möchte das Thema möglichst gründlich vorgekaut haben.  ;)

                Ja  :-\ Sorry, ich bin in meinem Umfeld selbst go-to-guy bei diverses Problemen und weiß, wie frustrierend es ist, Dinge so simpel wie möglich erklären zu müssen. In diesem Fall hätte (habe) ich es ohne Schritt-für-Schritt Anleitung nicht geschafft und mir vermutlich die Konfiguration so sehr zerschossen, dass ich sie hätte neu aufsetzen können.

                JeGr hat es ja wirklich in der Theorie super zusammengefasst. Für mich als "Neuling" (nutze pfSense nun auch schon etwas länger, aber hatte nie die Zeit, mich wirklich einzuarbeiten) war es trotzdem zu hoch.

                Jetzt ist es so, dass trotz der Outbount NAT Rule alle Devices im Netzwerk über den VPN laufen. Ich schildere mal genau, wie ich vorgegangen bin.

                1. VPN nach Providerangaben eingerichtet.
                -> das muss ich offensichtlich noch richtig gemacht haben, denn alle Devices haben jetzt die public IP des VPN Netzwerkes.

                2. Interfaces -> Interface assignment
                Neues Interface anhand ovpnn (Mein Zugang) aus Dropdown Menü erstellt (OPT1); entsprechend umbenannt

                3. Firewall -> NAT
                Automatic outbound NAT rule generation (IPsec passthrough included) geändert in Hybrid Outbound NAT rule generation
                (Automatic Outbound NAT + rules below)

                4. Neues Mapping erstellt
                Interace: OPENVPN
                Protocol: any
                Source: Network or single host: 10.0.13.71/24
                –--> 1. nach dem Abspeichern wird aus Network or single host automatisch Network: 10.0.13.0/24
                ----> 2. Wenn ich statt /24 /32 nehme, habe ich gar keinen Internetzugang auf meinem Rechner mehr. Das muss an den vorherigen Netzwerkeinstellungen liegen
                Alle anderen Werte: nicht verändert

                5. Firewall - Rules - LAN - IPv4 to any Regel kopiert, sieht insgesamt so aus
                Action: Pass
                Disable this rule: nein
                Interface: LAN
                TCP/IP: IPv4 (IPv4 UND IPv6 gleichzeitig geht nicht)
                Source: Single Host or alias: 10.0.13.71/31
                -----> Egal, welchen Subnet-Wert ich eingebe, nach dem Speichern wird /31 daraus
                Gateway: OPENVPN_VPN4

                Ergebnis:
                10.0.13.71 hat die öffentliche IP des VPN Providers. Andere Geräte im Netzwerk allerdings auch. Getestet an zwei Devices, die eigentlich weiterhin über das normale Netzwerk laufen sollten.

                Die einzige Möglichkeit, den Fehler zu finden wäre jetzt (von meiner Seite aus), mit den Settings herumzuprobieren. Was im worst case damit endet, dass ich pfSense neu aufsetzen kann. Ich setze mich parallel mal an ein Virtualisierung, aber vielleicht könnt Ihr mir ja auch hier weiterhelfen =)

                1 Reply Last reply Reply Quote 0
                • JeGrJ
                  JeGr LAYER 8 Moderator
                  last edited by

                  –---> Egal, welchen Subnet-Wert ich eingebe, nach dem Speichern wird /31 daraus

                  Wenn da SINGLE Host or Alias steht, dann wird auch nur ein Single Host eingetragen und nicht ein Subnetz. Dass dann irgendwas anderes beim Speichern daraus wird ist verständlich. Single sollte ja selbsterklärend sein, ergo trägt man da auch nur die eine IP ein. Ansonsten wäre es die Einstellung Network mit /32.

                  Allerdings wird wohl nicht diese Regel das Problem sein, sondern eher dein:

                  -> das muss ich offensichtlich noch richtig gemacht haben, denn alle Devices haben jetzt die public IP des VPN Netzwerkes.

                  Nein, wenn es richtig wäre, wäre nach dem Einrichten des VPN Netzwerkes gar nichts passiert, denn das Gateway sollte nicht automatisch für alles gesetzt sein. Anscheinend überschreibt dein VPN aber das bisherige Default Gateway, so entnehme ich das zumindest aus deiner Schilderung. Was sagt denn unter System/Routing/Gateways das alte WAN Gateway? Ist das noch default oder ist nun das neue OpenVPN Gateway default?

                  Don't forget to upvote 👍 those who kindly offered their time and brainpower to help you!

                  If you're interested, I'm available to discuss details of German-speaking paid support (for companies) if needed.

                  1 Reply Last reply Reply Quote 0
                  • B
                    benjsing
                    last edited by

                    System -> Routing -> Gateways sieht folgendermaßen aus
                    Name - Interface
                    WAN_DHCP (default) - WAN
                    OPENVPN_VPN4 - OPENVPN
                    WAN_DHCP6 (default) - WAN
                    OPENVPN_VPN6 - OPENVPN

                    WAN sollte also weiterhin default sein.

                    1 Reply Last reply Reply Quote 0
                    • B
                      benjsing
                      last edited by

                      Vielleicht liegt hier der Fehler:
                      VPN -> OPENVPN

                      Interface: WAN; das sollte vermutlich VPN bzw. OPT1 sein, oder?
                      Wenn ich es auswähle, bekomme ich die Fehlermeldung
                      The following input errors were detected: An IPv4 protocol was selected, but the selected interface has no IPv4 address.

                      Unter INTERFACES - OPT1
                      IPv4 Configuration: Static IPv4
                      -> Static IPv4 configuration
                      habe ich eine feste IP vergeben.
                      IPv4 standard gateway: jeweils leer gelassen und neu erstellt, macht keinen Unterschied.

                      1 Reply Last reply Reply Quote 0
                      • V
                        viragomann
                        last edited by

                        @benjsing:

                        Vielleicht liegt hier der Fehler:
                        VPN -> OPENVPN

                        Interface: WAN; das sollte vermutlich VPN bzw. OPT1 sein, oder?

                        Nein, das ist das Interface, an dem der OpenVPN-Server lauscht.

                        @benjsing:

                        Unter INTERFACES - OPT1
                        IPv4 Configuration: Static IPv4
                        -> Static IPv4 configuration
                        habe ich eine feste IP vergeben.
                        IPv4 standard gateway: jeweils leer gelassen und neu erstellt, macht keinen Unterschied.

                        Du hast dem VPN-Interface eine feste IP verpasst? Die bekommst du doch von VPN-Server zugewiesen, oder ist das bei deinem Provider anders?

                        Ich hätte den gleichen Verdacht wie Jens mit dem Default Gateway. Aber laut Angaben ist ja das WAN-GW default. Um es zu testen brauchst du nur die neu hinzugefügte FW-Regel am LAN deaktivieren. Dann müsste alles über WAN laufen.

                        Und poste doch bitte mal den LAN-Regelsatz.

                        @benjsing:

                        4. Neues Mapping erstellt
                        Interace: OPENVPN
                        Protocol: any
                        Source: Network or single host: 10.0.13.71/24
                        –--> 1. nach dem Abspeichern wird aus Network or single host automatisch Network: 10.0.13.0/24
                        ----> 2. Wenn ich statt /24 /32 nehme, habe ich gar keinen Internetzugang auf meinem Rechner mehr. Das muss an den vorherigen Netzwerkeinstellungen liegen
                        Alle anderen Werte: nicht verändert

                        Warum es mit 10.0.13.71/32 nicht funktioniert, kann ich mir nicht erklären. An welcher vorigen Netzwerkeinstellung meinst du?
                        Wenn du /24 zum Host angibst, ändert pfSense das einfach auch die Netzadresse, das ist okay. Es kann auch das LAN-Netz da eingetragen sein, die Regel wirkt sich ohnehin nur für das OPENVPN Interface aus und da sollte nur der eine spezielle Host hingeroutet werden.

                        1 Reply Last reply Reply Quote 0
                        • L
                          l4k3k3m4n
                          last edited by

                          @benjsing:

                          Ergebnis:
                          10.0.13.71 hat die öffentliche IP des VPN Providers. Andere Geräte im Netzwerk allerdings auch. Getestet an zwei Devices, die eigentlich weiterhin über das normale Netzwerk laufen sollten.

                          Die einzige Möglichkeit, den Fehler zu finden wäre jetzt (von meiner Seite aus), mit den Settings herumzuprobieren. Was im worst case damit endet, dass ich pfSense neu aufsetzen kann. Ich setze mich parallel mal an ein Virtualisierung, aber vielleicht könnt Ihr mir ja auch hier weiterhelfen =)

                          Ich vermute mal dass dein VPN Anbieter dir da eine default Route 0.0.0.0 über das VPN GW reinwürgt.
                          Geh mal in die OpenVPN Client Konfiguration und setz einen Haken bei "Don't pull routes".

                          Dann den Tunnel stoppen und neu starten. Dann sollten deine anderen Geräte auch wieder das "normale" GW benutzen können.

                          1 Reply Last reply Reply Quote 0
                          • V
                            viragomann
                            last edited by

                            @l4k3k3m4n:

                            Ich vermute mal dass dein VPN Anbieter dir da eine default Route 0.0.0.0 über das VPN GW reinwürgt.
                            Geh mal in die OpenVPN Client Konfiguration und setz einen Haken bei "Don't pull routes".

                            Das würde auch erklären, dass es zuvor ohne NAT Regel gar keine Verbindung mehr nach draußen gab.

                            1 Reply Last reply Reply Quote 0
                            • B
                              benjsing
                              last edited by

                              "don't pull routes" war das Rätsels Lösung :) Daaanke!

                              1 Reply Last reply Reply Quote 0
                              • First post
                                Last post
                              Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.