Die Verwirrung ist doch groß.. NAT & Rules für "dummies" erklärt (..bitte)
-
Ein freundliches Hallo an alle,
ich benötige Eure Schwarmintelligenz um mir bitte bei der (Neu-)Einrichtung meiner pfSense zu Helfen.
Ich habe pfSense seit Version 1.2.1 im Einsatz und bin, bis Dato, mit meinem rudimentären Wissen ganz gut
damit zu rande gekommen (Rudimentär im Bezug auf die pfSense;
Das TCP/IP Protokoll ist mir allerdings nicht ganz fremd, da ich schon auf diversen embedded Platformen
Stacks implementiert habe)Vor gut 3 Wochen habe ich mir nun eine neue Hardware für die pfSense angeschafft und pfSense soweit wieder am laufen.
Nun komme ich allerdings langsam an ein Verständnisproblem was NAT und Firewall Regeln betrifft.
Ich habe leider noch kein Tutorial bzw. eine Anleitung gefunden, die in (für mich verständlichen) einfachen
Worten erklärt, WIE, WANN und in welcher REIHENFOLGE auf der pfSense WAS abgearbeited wird.Folgendes ist definiert:
INTERFACES:
1\. WAN (re0) : IPV4/DHCP IPV6/none 2\. LAN (BRIDGE0) : IPV4/static IPV6/none 3\. LAN_WIRED (re1) : IPV4/none IPV6/none 4\. LAN_WIFI (ath0_wlan0) : IPV4/none IPV6/none 5\. VPN_P2P : IPV4/DHCP IPV6/none 6\. VPN_UK : IPV4/DHCP IPV6/none
Wireless:
1\. ath0_wlan0 : AP
Bridges:
1\. BRIDGE0 : Members: LAN_WIRED, LAN_WIFI
FIREWALL:
ALIASES:
1..n HOST_X : Jeder im Netztwerk vorhandener Host mit statischer IP (no static ARP entry!!) n+1\. ROUTE_NO_VPN : Type Hosts / Hosts (per nested Alias) die nicht über einen VPN Kanal geroutet werden sollen : liegen im bereich 10.a.x.y/16 n+2\. ROUTE_VPN_P2P : Type Hosts / Hosts (per nested Alias) die über VPN_P2P geroutet werden sollen : liegen im bereich 10.b.x.y/16 n+3\. ROUTE_VPN_UK : Type Hosts / Hosts (per nested Alias) die über VPN_UK geroutet werden sollen : liegen im bereich 10.c.x.y/16 n+4\. DENY_WAN : Type Hosts / Hosts (per nested Alias) die nur intern (im LAN) geroutet werden sollen : liegen im bereich 10.d.x.y/16 -> Alle Smart Home SonOff's / Sollen nur mit dem MQTT Server "quasseln" n+5\. DNS_VPN : Die DNS Server meines VPN Providers
SYSTEM -> ROUTING -> GATEWAYS:
Name Interface Gateway Monitor IP Description 1\. WAN_DHCP (default) WAN 192.a.b.1 192.a.b.1 Interface WAN_DHCP Gateway 2\. VPN_P2P_DHCP VPN_P2P 10.x.x.1 10.x.x.1 Interface VPN_P2P_DHCP Gateway 3\. VPN_UK_DHCP VPN_UK 10.x.x.1 10.x.x.1 Interface VPN_UK_DHCP Gateway
Mir ist nicht klar warum bei beiden VPN Tunndes Gateway und Monitor IP mit 10.x.x.1 identisch sind!??
Hier dürfte ein Fehler vorliegen!!!SERVICES -> DNS RESOLVER
ist "enabled" auf Port 53 Network Interfaces : LAN, VPN_P2P, VPN_UK, LOCALHOST Outgoing Network Interfaces : WAN, VPN_P2P, VPN_UK, LOCALHOST Transparent / DNSSEC "enabled"
Folgendes möchte ich gerne erreichen:
1\. Clients ROUTE_NO_VPN über das Gateway WAN_DHCP DNS über DNS Resolver 2\. Clients ROUTE_VPN_P2P über das Gateway VPN_P2P_DHCP (inklusive Port Forwarding) DNS über DNS Resolver 3\. Clients ROUTE_VPN_UK über das Gateway VPN_UK_DHCP (inklusive Port Forwarding) DNS über externe DNS_VPN (zwecks Netflix und BBC iPlayer) 4\. Clients DENY_WAN haben keinen Zugriff auf das WAN
–-----------------------------------------------------------------------------------------------------------
Jetzt kommt der Punkt an dem ich nichtmehr durchsteige: NAT -> Port Forward & Outbound bzw. Firewall Rules
FIREWALL -> NAT -> Port Forward:
Was muß ich hier jetzt als Interface einstellen für die VPN's? WAN oder VPN_P2P bzw. VPN_UK?
So gesehen kommt jeder eingehende traffic ja über das WAN interface.
Wenn ich das richtig verstehe, sind "Source Adr." bzw. "Destination Adr." identisch mit
dem Source & Destination aus dem IP-Header.
Gleiches gilt fur "Source Port" bzw. "Destination Port" identisch mit
dem Source Port & Destination Port aus dem TCP-Header.Tut aber nicht.. Die Ports sind geschlossen!!!
Interface | Protocol | Src. Adr. | Src. Ports | Dest. Adr. | Dest. Ports | NAT IP | NAT Ports | Description ---------------------------------------------------------------------------------------------------------------------------------- WAN TCP * * WAN address VPN_P2P_TCP ROUTE_VPN_P2P VPN_P2P_TCP Redirect P2P TCP Ports for VPN_P2P WAN UDP * * WAN address VPN_P2P_UDP ROUTE_VPN_P2P VPN_P2P_UDP Redirect P2P UDP Ports for VPN_P2P
Gleiches für den DNS:
-> Mein P2P Host bekommt immer die pfSense als DNS Server !!!???
Interface | Protocol | Src. Adr. | Src. Ports | Dest. Adr. | Dest. Ports | NAT IP | NAT Ports | Description ------------------------------------------------------------------------------------------------------------------------------------- WAN TCP DNS_VPN 53 (DNS) VPN_P2P address 53 (DNS) ROUTE_VPN_P2P 53 (DNS) Redirect DNS for VPN_P2P LAN TCP * 53 (DNS) * 53 (DNS) 127.0.0.1 53 (DNS) Redirect DNS to DNS Resolver
FIREWALL -> NAT -> Outbound:
–--------------------------Aähnliches für die Outbound.
Interface sollte WAN sein, da ja (so wie ich es verstehe) immer die Ziel angegeben werden soll.
--> "The interface on which traffic is matched as it exits the firewall. In most cases this is "WAN" or another externally-connected interface."
Source meine Hosts. Ports dito...
Dest. & Dest. Ports : any
usw...Tut auch nicht so wie ich will!!!
Interface | Source | Src. Ports | Destination | Dest. Port | NAT Address | NAT Port | Static | Description ------------------------------------------------------------------------------------------------------------------ WAN ROUTE_VPN_P2P 53(DNS) DNS_VPN 53 (DNS) WAN address 53 (DNS) Redirect P2P to VPN DNS Server WAN ROUTE_VPN_P2P VPN_P2P_TCP * * WAN address * WAN ROUTE_VPN_P2P VPN_P2P_UDP * * WAN address *
FIREWALL -> RULES:
–----------------Hier herrscht bei mir jetzt die größte Verwirrung. Bei meiner "alten pfSense" hatte ich "NUR" Floating, WAN & LAN.
Jetzt: Floating, WAN, LAN, LAN_WIRED, LAN_WIFI, VPN_P2P, VPN_UK, OpenVPN
Wie müssen hier die Regeln definiert werden?
Irgendwie muß ich ja sichergestellen, daß die Hosts auch entsprechend geroutet werden.
Nur hier kann ich ja die Gateways angeben. Also muß irgendwo hier auch sichergestellt werden
das einige Hosts über VPN geroutet werden und die anderen nicht..!!!z.B. sollte doch die Regel für meine DENY_WAN Hosts so ausehen:
INTERFACE -> WAN
Action | Protocol | Source | Port | Destination | Port | Gateway | Queue | Schedule | Description ------------------------------------------------------------------------------------------------------------- Reject IPv4 * DENY_WAN * * * * none Block Hosts from WAN access
Wie müsste der Rest ausssehen?
Ich bin doch ziemlich verwirrt, da ich (wie oben schon erwähnt)
keine Beschreibung / kein Tutorial gefunden habe, was den grundsätzlichen
ablauf auf einer pfSense (verständlich) erklärt.
Die ganz große Mehrheit scheint für Firewall-Fachleute geschrieben zu sein.Ooops.. Noch was:
Die beiden OpenVPN Tunnel sind aktiv.
Auf dem Dashboard sehe ich jetzt für jeden VPN Tunnel eine "Remote IP" welche der Server IP entspricht und eine "Virtual IP".
Nun liegen allerdings die angezeigten "Virtual IPs" mit 10.x.x.a bzw 10.x.x.b in meinem Subnet (10.0.0.0/8).
Können sich hieraus Probleme ergeben? Da ich meine verschiedenen Hosts (siehe auch oben) ja wie folgt aufgeteilt habe.
Dahe brauche ich für mein Subnet den CIDR /8 bereich.ROUTE_NO_VPN : Hosts im bereich 10.a.x.y/16 ROUTE_VPN_P2P : Hosts im bereich 10.b.x.y/16 ROUTE_VPN_UK : Hosts im bereich 10.c.x.y/16 DENY_WAN : Hosts im bereich 10.d.x.y/16
Ich danke schon mal im voraus für Eure Hilfe.
MfG
LoCruxIch habe (nach der Vorlage) hier mal so grob den Aufbau meines Netzwerks skizziert.
O | WAN / Internet U | | T | | S | .-----+-----. I | | Fritz.Box | (Kabel/feste IP) D | '-----+-----' E | | (DMZ / Exposed Host) (192.x.y.0/24) | | | | .-----+-----. | | WAN | (Physical Interface re0) | '-----+-----' | | | (192.x.y.2/32) | | | | p | + --------------------------------+-----------------------------------+ F | | | | S | .------+------. .------+------. .------+------. E | | Gateway | | Gateway | | Gateway | N | | DHCP_WAN | | VPN_P2P_DHCP| | VPN_UK_DHCP | S | '------+------' '------+------' '------+------' E | | | | | + --------------------------------+-----------------------------------+ | | | | | .---------------+---------------. | | LAN = BRIDGE0 (DHCP Server) | | | 10.0.0.0/8 | | .-------------------------------. | | .-----------. .-----------. | | | | WIRED | | WIFI | | (Physical Interfaces re0 & ath0) | | '-----+-----' '-----------' | | | | .-------+-----------------------. | | | .-----+------. I | | LAN-Switch | N | '-----+------' S | | I | +------ (Clients für VPN_P2P) D | | E | +------ (Clients für VPN_UK) | | | +------ (Clients ohne VPN) | | | | | | | .-----+------. | | Unifi AP | | '-----+------' | | | | | (WiFi Clients)
-
Viel einfacher geht es nicht: https://doc.pfsense.org/index.php/Firewall_Rule_Processing_Order
Und: https://doc.pfsense.org/index.php/Port_Forward_Troubleshooting