PortForwarding WAN -> ovpns1



  • Hallo Leute,
    leider komm ich mit Google und Forenlesen nicht weiter, daher muss ich nun hier um hilfe Fragen.

    Meine Konfig:
    Edis KVM Server mit pfsense 2.2.3
    OpenVPN Server installiert

    Interfaces:
    WAN: vtnet0 (öffentliche IP Adresse)
    OpenVPN: ovpns1  (nicht zugewiesen unter Interfaces, da ich mich da immer aussperre wenn ich das mach)

    Geplantes Vorhaben:
    Zentraler OpenVPN Server, DDWRTRouter verbinden sich in die VPN und bekommen jeweils eine fixe IP Adresse (10.0.8.100/24 usw.) zugewiesen.
    Am DDWRT hängt am LAN ein Gerät welches HTTP zu Verfügung stellt. Dort hab ich die IP Tables schon fertig.
    Wenn mein PC im OpenVPN Tunnel ist, habe ich Zugriff auf http://10.0.8.100:80. Der nächste Router hat http://10.0.8.101:80 usw.

    Nun soll aber das ganze von pfSense WAN Seite via Port Forwarding erreichbar sein.
    http://WANipAdress:9000 –> http://10.0.8.100:80
    http://WANipAdress:9001 --> http://10.0.8.101:80
    ...
    .
    Wie konfiguriere ich das nun richtig...probiere das seit ca 6 Stunden...
    Danke!

    MfG
    Manuel Wagner



  • Hi Manuel,
    nicht ganz einfach Dir da zu folgen, eine kleine Zeichnung Deines Netzwerkaufbaus würde die Kristallkugel ad absurdum führen. ;)
    Aber versuchen wir es mal.

    OpenVPN: ovpns1  (nicht zugewiesen unter Interfaces, da ich mich da immer aussperre wenn ich das mach)

    Kann ich nicht wirklich nachvollziehen aber folgendes.
    Du richtest Deinen OpenVPN-Server ein.
    Da der Tunnel das WAN-Interface nutzt vergibts Du nur entsprechende Rules für den Tunnel.
    Du brauchst kein extra Interface anzulegen unter Interfaces.
    Bei den Firewall-WAN-Rules legst Du eine Regel an die so in etwas aussieht…

    ---IPV4---Source/any----Port/any----WAN-Adress---Port/1194---Gateway/any----
    

    und auf dem Firewall-OpenVPN-Rules eine Regel….

    ---IPV4---OpenVPN-Netz---Port/any---LAN-(hinter dem Server)---Port/any---Gateway/any---
    

    Und gut ist das.
    Die restliche Konfiguration muss der OpenVPN-Server übernehmen und wenn Du Dein remotes Netz erreichen willst, vergiss nicht die…
    Client-specific-overrides (CCD) zu konfigurieren, allein die remote Firewall reicht nicht um ins DD-WRT Netz zu verbinden.
    Gruß orcape



  • Hallo,
    danke für die Antwort.
    ja aber iwie schwer zu zeichen. Ich versuch nochmal vereinfacht zu schreiben!

    pfSense mit OpenVPN Server
    Einziges Interface = WAN mit offizieller IP
    OpenVPN TransportNetz= 10.0.8.0/24

    Client1 verbindet sich über WAN zu OpenVPN und bezieht die IP 10.0.8.100 im Tunnel.
    Die IP Adresse 10.0.8.100 stellt auf Port 80 eine Website im Tunnel zur Verfügung.

    Client2 will über WAN auf 10.0.8.100:80 zugfreifen und will direkt die offizielle IP benutzen und baut KEINEN Tunnel ins 10.0.8.0/24 auf.

    Also brauch ich Rules/PAT damit "offizielleIP" Port 9000 auf VPNNetzwerk 10.0.8.100 Port 80 gepatet wird.
    "offizielleIP":9000 soll auf TunnelIP 10.0.8.100:80 zeigen und funktionieren!

    Hab ichs mehr oder weniger verständlich hingebracht?

    Danke!
    Lg



  • Was meinst Du mit offizieller IP ? evtl. statische Ip vom Provider ?
    Und was ist Port 9000 ? Dein Tunnelport ???
    Soll das ein Multiclienttunnel sein ?
    Du solltest mal die Server- und Client.conf des Tunnels posten, vielleicht leuchtet mir das dann etwas besser ein.
    Gib erst  mal den Tunnel komplett frei, bevor Du hier irgend etwas mit einzelnen Ports versuchst.

    Hab ichs mehr oder weniger verständlich hingebracht?

    Na ja etwas besser, aber nicht wirklich.
    Configs, Routingprotokolle, evtl. Logs posten, sonst wird das nix.
    Gruß orcape



  • Hallo,

    kleine Zeichung im Anhang!
    Danke!

    Lg




  • Niemand eine Idee…hätten jetzt schon mal mit TAP versucht..kommen aber nicht weiter.



  • Hallo,

    ich denke die sind alle auf Urlaub. Außer mir  :(

    Ganz habe ich deine Problembeschreibung immer noch nicht verstanden, aber wenn, wie du schreibst, von der pfSense aus http:/10.0.8.100 erreichbar ist, verkürzt das ja schon die Problemstrecke etwas.

    Aber woran scheiterst du eigentlich? Die Forwarding-Regel zu konfigurieren wird ja wohl nicht das Problem sein, oder? Deine Anmerkung in der Grafik lässt es nämlich doch vermuten.
    Ich denke eher, dass du nicht weißt, wie du richtig die Antwortpakete vom Server auf den Rückweg leitest.

    Ich vermute, der Client2 hat eine dynamische IP, ansonsten könntest du für ihn am DDWRTRouter eine feste Route über den VPN Tunnel bauen.
    Wenn er dynamisch ist, ist wohl der beste Weg, auf der pfSense dafür eine Outbound NAT Regel einzurichten:
    Firewall > NAT > Outbound
    Aktiviere da mal "Hybrid Outbound NAT rule generation" und klicke save.
    Dann eine Regel hinzufügen für das Interface OpenVPN, Source = any, Destination = any, Translation = <openvpn server="" adresse="">(10.0.8.1?)
    Sichern und anwenden.

    Dann sollte das Routing passen und die Antwortpakete auch zurückfinden.

    Grüße</openvpn>



  • Hallo..
    dann sollten wir auch auf Urlaub gehn..

    Haben den Fehler gefunden…is war das Routing für die Antwortpakete.
    Haben die passenden ip routes geschrieben fürs dd-wrt.

    ip route add default via 10.0.8.1 table 10
    ip rule add from 192.168.0.253/32 table 10

    Und schon das nächtste Problem -> sobald der Tunnel neu aufgebaut wird oder das WAN Interface mal down und wieder up geht sind die tables wieder weg!
    Versucht haben wir sie in der Weboberfläche und Systemstart, Firewall oder benutzerdefiniertes Script.
    Wenn ich das ganze über ssh reinklopfe funktoniert alles wie sollte.

    Wenn ich die DD-WRT Wiki durchstöbere finde ich Anleitungen, dass man das ganze als Script mit Endung .wanup speichern soll.
    Aber alle Speicherorte die da funktionieren sollten, sind nach einem Neustart leer und mein Script halt weg..

    Gibts da Befehle um das ganze persistent zu speichern? (nvram commit hat auch nichts bewirkt)

    Danke!

    Lg



  • Mit dd-wrt bin ich leider nicht vertraut.
    Aber du schickst mit dieser Route den gesamten Traffic über die VPN. Ist das so gewollt?

    Wie auch immer, lass die Route weg und versuch meinen Vorschlag mit dem Outbound NAT auf der pfSense. Funktioniert aber nur, wenn der dd-wrt das Default Gateway für den Server ist, was vermutlich der Fall ist. Denn dann schickt er die Pakete zum Router und wenn der die VPN aufgebaut hat, schickt er sie dahin weiter. Wenn nicht, schickt er sie ins WAN, wo sie beim ISP verworfen werden (sollten).

    Das ist ohnehin die bessere Lösung, wenn du wirklich, wie du anfangs geschrieben hast, mehrere Router hast, die eine VPN-Verbindung zur pfSense aufbauen.