zugriff vom WAN auf rechner im LAN

Started by bongo, November 10, 2020, 07:30:47 PM

Previous topic - Next topic
ich verwende OPNSense um den "privaten" teil des netzes vom "etwas öffentlicheren" teil zu trennen.
das heisst während die meisten rechner LAN seitig an OPNSense hängen hat's auch rechner auf der WAN seite.

ich möchte nun von einem der rechner auf der WAN seite mittels VNC auf einen rechner im LAN zugreifen.
bei meiner alten firewall lösung geschah dies mittels destination NAT, d.h. ein bestimmter port (z.b. 5911) der firewall wurde auf den VNC port des internen rechners (<IP vnc server>:5900) umgeleitet, wobei von aussen nur die firewall zu sehen war. es wurde von aussen also eine verbindung auf <firewall>:5911 aufgebaut und <IP vnc server> blieb verborgen.

nun versuche ich etwas änliches mit OPNSense zu konfigurieren. ich bin davon ausgegangen dass ich dies mit port forward machen muss. dies habe ich entsprechend konfiguriert, sehe nun aber dass dadurch vom rechner im WAN nicht eine verbindung auf die firewall, sondern durch die firewall hindurch auf <IP vnc server> geschaltet wird. jedenfalls wird dies so im log der firewall dargestellt.
die so geschaltete verbindung wird nun aber von der firewall geblockt aufgrund der automatischen regel "Block private networks from WAN_UpLink". das port forward hat zwar automatisch eine regel erstellt für den verkehr vom rechner im WAN zu <IP vnc server>:5900, diese kommt aber stets nach der automatischen blockierregel und kommt somit gar nie zum zug.

ein workaround wäre allenfalls, die automatische regel "Block private networks from WAN_UpLink" auszuschalten und eine entsprechende manuelle regel zu definieren welche tiefere prio hat als diejenige für den zugriff auf <IP vnc server>:5900. ich frage mich allerdings ob das eine saubere lösung ist.
lieber würde ich eigentlich den <IP vnc server> im netz verstecken und von aussen bloss die IP von OPNSense sichtbar machen.

wie gehe ich da am besten vor und macht das so überhaupt sinn?

vielen dank!

Naja, eigentlich sprichst du hier ja nicht von einem externen WAN/Internet sondern möchtest dein lokales Netz segmentieren.

Wenn dein "WAN" privat adressiert ist (RFC1918), dann musst du die "Blocking private Networks" entfernen oder wie von dir bereits erwähnt: Eine Rule manuell erstellen und oben die spezifische (Source Host) hinzufügen.

Quotelieber würde ich eigentlich den <IP vnc server> im netz verstecken und von aussen bloss die IP von OPNSense sichtbar machen.

Ja, das ist durch NAT ja gegeben. Die Frage ob das Sicherheitstechnisch etwas bringt, lassen wir mal aussen vor.

vielen dank für die rasche antwort!

leider krieg ich die verbindung nach wie vor nicht hin.

hab die regeln für's blockieren der lokalen netze vom WAN aus nun manuell erstellt und die automatische regel entfernt.
diejenige welche port forward generiert ist nun zuoberst.

mit capture sehe ich nun pakete zwischen dem rechner im WAN und der firewall auf port 5911, sowie pakete zwischen dem rechner im WAN und demjanigen im LAN auf port 5900. die pakete sind in beiden richtungen unterwegs.
eine verbindung krieg ich allerdings trotzdem nicht hin.

woran könnte das noch liegen?

Kannst du mal bitte mehr Informationen geben
- einen grafischen netzwerkplan
- Screenshots
   - Firewall
       - wan
       - lan
       - deine angelegte Regel für das vnc
- läuft diesense auf Blech oder als vom

Bitte alle Infos die zur schnellen Lösung helfen können


Gesendet von iPad mit Tapatalk Pro
Internet: Willy.tel Down: 1Gbit/s, UP: 250Mbit/s Glasfaser  |
Router/Firewall: pfSense+ 23.09  |
Hardware: Netgate 6100

Quote from: bongo on November 10, 2020, 09:40:11 PM
vielen dank für die rasche antwort!

leider krieg ich die verbindung nach wie vor nicht hin.

hab die regeln für's blockieren der lokalen netze vom WAN aus nun manuell erstellt und die automatische regel entfernt.
diejenige welche port forward generiert ist nun zuoberst.

mit capture sehe ich nun pakete zwischen dem rechner im WAN und der firewall auf port 5911, sowie pakete zwischen dem rechner im WAN und demjanigen im LAN auf port 5900. die pakete sind in beiden richtungen unterwegs.
eine verbindung krieg ich allerdings trotzdem nicht hin.

woran könnte das noch liegen?

Windows Firewall auf dem Zielhost aktiv? Windows lässt standardmäßig nur das eigene Subnetz als Quelle zu.
,,The S in IoT stands for Security!" :)

hm.
also die windows firewall hatte ich auch schon im verdacht.
was ich zwischenzeitlich noch versucht hab ist die windows defender firewall auf dem zielhost disablen und auf opnsense alle verbindungen vom host im wan zum zielhost erlauben.
geholfen hat's aber nicht.

gibt's denn allenfalls ne möglichkeit dass ich diesen zugriff natten kann, so dass der zielhost diesen als zugriff von der firewall (also vom LAN port der firewall) statt vom ursprünglichen host sieht?

soweit ich das damals verstanden hab hat das mit meiner alten firewall so funktioniert...


was hat das für ein ziel, warum benötigst du so ein konstrukt?
gib doch einfach den clients einen vpn zugang.
Internet: Willy.tel Down: 1Gbit/s, UP: 250Mbit/s Glasfaser  |
Router/Firewall: pfSense+ 23.09  |
Hardware: Netgate 6100

Kannst du mal bitte noch einen Screenshot von deiner Port Forwading Config posten?
Kannst du ein ipconfig /all von deinem Client posten?
Subnetzmasken auf den Interfaces der opnsense richtig gesetzt?


Ist das gewollt, dass du bei der Translation den Port änderst? WAN Seitig hört die opnsense auf port 5901 und du "schickst" die pakete weiter auf port 5900?

Versuche mal "Destination Port Range" und "Redirect Target Port" beide auf 5900 zu setzen.

Kannst du dann auf dem source host (WAN seitig) mal schauen ob du ein connection test mit telnet machen kannst (telnet 172.16.0.10 5900)?

ja, das ist gewollt da ich je nach port auf einen anderen rechner in LAN zugreifen möchte (hat mit der alten firewall so funktioniert).

hab nun mal beides auf 5900 gesetzt, allerdings ohne erfolg. vnc geht noch immer nicht und mit telnet krieg ich auch keine antwort.

hab mir aber noch folgende überlegung gemacht (wobei ich nicht weiss ob da was dran sein könnte):
- so wie ich's verstehe macht opnsense bei port forward kein destination nat, d.h. der host im LAN sieht die ip des host im WAN und der host im WAN sieht in der antwort die ip des host im LAN. korrekt?
wenn nun der host im WAN das nächste paket schickt so schickt er's nicht mehr an die WAN ip der firewall sondern an die ip des host im LAN, also in's 192.168er subnetz von welchem er aber nicht weiss wo es liegt. somit geht das paket auf seinen default gateway welcher nach draussen ins internet ist, d.h. er schickt's zum router1 und nicht zu opnsense.
könnte da was dran sein?

hab noch versucht die route auf dem source host entsprechend zu setzen aber ohne erfolg ;-(

Also eigentlich verhält sich opnsense da nicht anders wie andere Router... Und doch: Port Forwarding ist eigentlich ein Destination NAT bei dem auch noch die Ports "übersetzt" werden können.

Die Windows Firewall hast du mal komplett deaktiviert auf dem Target Host (im 192.168er Netz), oder? Was sagt das Firewall Log auf der opnsense? Wird irgendwas mit diesem Port geblockt?

also wenn opnsense diese verbindung nat/pattet  so sehe ich nicht was schief gehen könnte.
das wär dann genau das was die alte firewall auch macht und damit funktioniert's.

die windows firewall auf dem target hatte ich ausgeschaltet, hat aber nix geholfen.

opnsense meldet nix was geblockt würde.


@bongo leider hast du meine fragen nicht beantwortet, warum setzt du dieses konstrukt ein?
welche gründe hast du oder was genau ist das ziel, so wie ich das verstanden habe
ein windows rechner ist vor dem wan interface der sense und soll irgend was mit vnc aufrufen im lan der sense?
warum? warum muss der windows rechner vor der wan der sense sein?
Internet: Willy.tel Down: 1Gbit/s, UP: 250Mbit/s Glasfaser  |
Router/Firewall: pfSense+ 23.09  |
Hardware: Netgate 6100