Floating Rules und Interface Rules
-
Guten Abend Zusammen und noch ein frohes neues Jahr :-)
Ich stehe gerade ein wenig auf dem Schlauch mit einer Erweiterung meiner Firewall-Regeln, daher frage ich einfach mal in die Experten-Runde ob a) mein Verständniss an der Stelle richtig ist und b) meine Umsetzung überhaupt so korrekt ist :-)
Ich habe auf meiner pfSense mehrere Schnittstellen, u.A. ein Interfache "Server".
Dieses Interfache "Server" hat ein paar Regeln, die wie folgt aussehen:
1.) BLOCK IPv6 (any) mit any to any. Da ich kein ipv6 nutze, sperre ich dies per 1. Regel
2.) BLOCK IPv4 mit Source "*" und Destination "This Firewall" auf ein Alias mit einigen Ports der Weboberfläche der Firewall. Damit soll kein Server in der Lage sein auf die Oberfläche der Firewall zu kommen (u.A. Port 80, 443 und 8443)
3.) ALLOW IPv4 (any) mit Source "SERVER net" und Destination-Alias !PrivateNetworks um dem Server-Netz den Internetzugang zu erlauben
4.) ALLOW IPv4 (any) mit Source "Server net" und Destination "Server net" damit die Server untereinander kommunizieren dürfen
5.) ALLOW IPv4 (any) mit Source "Server net" und Destionation "Client net" damit die Server mit dem Client Netz kommunizieren können
6.) BLOCK IPv4+6 (any) mit Source "any" und Destination "any" um alles andere zu Blocken
Zusätzlich habe ich noch Floating Regeln erstellt, und hier fängt nun meine Frage an:
Bisher habe ich es so Verstanden, dass die Floating-Regeln über allem Stehen, bzw. als erstes abgearbeitet werden.
Ich habe (noch) einen Domänen-Server außerhalb der Netz-Struktur stehen (Steht im Netzwerk vor dem WAN-Interface, wie gesagt, noch, wird bald Umgestellt und ins Server-Netzwerk wandern wenn die Infrastruktur komplett migriert wurde), auf den aber die anderen Server halt Zugriff benötigen.
Die Floating-Regel sieht dann so aus:
7.) ALLOW IPv4 (any) mit Source any und Destination 192.168.0.10 (Domänen-Server) von den Interface "Server" und "Client"
Bisher hat das alles wunderbar funktioniert, nur heute habe ich dann Regel 6.) BLOCK any aktiviert, und ich hatte keinen Zugriff mehr von den Servern auf den Domänen-Server.
Wenn ich den BLOCK any am Ende der Server-Regel wieder abschalte, funktioniert der Zugriff sofort wieder.Aber weshalb greift hier der BLOCK am Ende der Interface-Regel, wenn doch das Allow als erstes bearbeitet wird?
Vielleicht könnt Ihr mir hier ein wenig auf die Sprünge helfen, die englische Anleitung zu den Floating Rules verstehe ich nicht ganz...
Gruss,
Michael -
Hallo,
wünsche auch ein gutes neues Jahr.
@msp1978 said in Floating Rules und Interface Rules:
2.) BLOCK IPv4 mit Source "*" und Destination "This Firewall" auf ein Alias mit einigen Ports der Weboberfläche der Firewall. Damit soll kein Server in der Lage sein auf die Oberfläche der Firewall zu kommen (u.A. Port 80, 443 und 8443)
Alles, das nicht explizit erlaubt ist, wird ohnehin geblockt.
Macht also für mich mehr Sinn, nur das zu erlauben, was benötigt wird, wie DNS, NTP, u. ä.4.) ALLOW IPv4 (any) mit Source "Server net" und Destination "Server net" damit die Server untereinander kommunizieren dürfen
Läuft das über die pfSense? Bridge?
5.) ALLOW IPv4 (any) mit Source "Server net" und Destionation "Client net" damit die Server mit dem Client Netz kommunizieren können
Müssen sie das? Üblicherweise greifen Clients auf Server zu.
6.) BLOCK IPv4+6 (any) mit Source "any" und Destination "any" um alles andere zu Blocken
Macht pfSense ohnehin mittels der Default-deny Rule am Ende des Regelsets, die aber nicht angezeigt wird.
Falls es ums Logging geht, das lässt sich in den Log-Einstellungen abschalten.Bisher habe ich es so Verstanden, dass die Floating-Regeln über allem Stehen, bzw. als erstes abgearbeitet werden.
Nur wenn "Quick" angehakt ist. Ansonsten kommen Floating Regeln nach den User-Regeln an den Interfaces.
Grüße
-
@viragomann Hallo :-)
Danke für Deine Anmerkungen, ich setze hier einfach noch einmal an, da sich für mich noch ein paar andere Dinge dadurch ergeben haben :-)
Zu 2.), da ich mich durch diverse Anleitungen zum Rantasten / Erlernen der Regeln gearbeitet habe, bin ich hierbei auf unterschiedliche Vorgehensweisen gestoßen.
Generell bin ich auch davon ausgegangen, dass alles was nicht erlaubt ist, gesperrt wird. Daher werde ich das auch wieder entfernen, wenn es eh gesperrt ist, um meine Regeln übersichtlich zu halten. Danke hierfür.Zu 4.) Mein Aufbau ist so, dass die pfSense als zentrales Organg alles regelt, ich habe als Aufbau für jedes Netz ein eigenes Interface erstellt, so dass ich alles über die pfSense regeln kann. Zur Trennung (und für meinen Spieltrieb) habe ich dazu ein paar Testnetze erstellt, brauchen würde ich theoretisch nur WAN und LAN, aber wo bleibt da das Testen / Lernen :-)
Zu 5.) Ich weis gar nicht mehr wieso ich das gemacht habe, mir fällt gerade nichts ein wieso der Server zum Client müsste :-) Werde ich wieder rausnehmen. Clients müssen zum Server, nicht anders herum.
Zu 6.) OK, wenn es das sowieso gibt, aber nicht anzeigt, nehme ich das raus.
Aber wo finde ich die Einstellung "Quick" die Du ansprichst?Gruss,
Michael -
@msp1978 said in Floating Rules und Interface Rules:
Zu 2.), da ich mich durch diverse Anleitungen zum Rantasten / Erlernen der Regeln gearbeitet habe
Ich würde die offiziellen Anleitungen von Netgate empfehlen.
Das pfSense Buch findest du im Help-Munü im WebGUI
oder im Internet. Ist halt alles in Englisch.Generell bin ich auch davon ausgegangen, dass alles was nicht erlaubt ist, gesperrt wird. Daher werde ich das auch wieder entfernen, wenn es eh gesperrt ist, um meine Regeln übersichtlich zu halten.
Ist auch so. Eine Block-Regel hat schon Sinn, wenn anschließend eine Pass-Regel folgt, die den nicht gewünschten Traffic erlauben würde. Das sehe ich aber hier nicht.
Zu 6.) OK, wenn es das sowieso gibt, aber nicht anzeigt, nehme ich das raus.
Aber wo finde ich die Einstellung "Quick" die Du ansprichst?Im Floating Regel-Editor im oberen Bereich:
In der Regelübersicht sind diese dann mit einem Doppelpfeil markiert
Grüße
-
Blockregel 2 mach in gewisser Weise schon Sinn.
Ich Blocke hier für alle DMZ Netze die den Alias WAN address für alles, nachdem ich DNS, NTP erlaubt habe, mehr brauchen die nicht.Ansonsten könnten DMZ Netze, wie Gast die eine any !RFC1918 Regel am Ende haben auf die WAN IP der Firewall voll zugreifen.
Soweit mir das bekannt ist arbeite die pfSense wie folgt.
Floating -> Interface Groups -> Interface
Quick besagt nur, das sobald hier ein match gefunden wird das Paket an der Stelle nicht weiter sucht.Ansonsten arbeiten Floatings nach dem any Match Prinzip und nicht nach dem fist match.
Das macht diese Regel etwas eigen in der Anwendung, aber auch zu einem sehr mächtigem Tool wenn man damit umzugehen weiß.