nginx und pf

Mardor

Well-Known Member
Hallo,

hat von euch irgendeiner eine Idee für folgendes Problem.

Ich setze nginx als reverse proxy, die Anfrage für verschiedene Webseiten kommen also auf dem nginx an und werden auf verschiedene Jail verteilt. Ich würde gerne für versch. Webseiten spezielle Filter via pf setzen.

Da die Ziel und die Quell IP ja logischerweise für alle Domains gleich sind kann ich das ja nicht regulär über pf Quelle, Ziel regeln. Gibt es hier irgend eine Idee um die Filterung doch über IP Tables zu realisieren.

Gruß Mardor
 
Falsche Schicht. Wenn du oberhalb von Layer 4 filtern willst, kannst du keinen Paketfilter nehmen, der nur bis Layer 4 geht.
 
Hallo,

Falsche Schicht. Wenn du oberhalb von Layer 4 filtern willst, kannst du keinen Paketfilter nehmen, der nur bis Layer 4 geht.
Ja, korrekt. Ein Paketfilter schaut sich den Paket Header an und nicht der Content somit sieht er den HTTP GET nicht.

Meine Idee war eher sowas wie, das der nginx sowas wie einen Marker auf das Paket setzt und pf dann filtert. Aber das würde auch nicht gehen, da der nginx erst das Paket bekommt wenn der 3 Wege Handshake schon vorbei ist.

Was genau willst du denn "filtern"?
Ich weis das dies eher eine religiöse Sache ist. Ich möchte nur HTTP/HTTPS Requests von Deutschland, Österreich und Schweiz IP Adressen durchlassen, deshalb fetch ich mir die Country Lists und filter alles andere raus. PF ist im Gegensatz zu iptables so extrem schnell das es keinen Geschwindigkeitsunterschied beim einlesen bzgl. Paketfiltern gibt. Ich gehe nicht davon aus das ich diese Geschwindigkeit beim filtern mit NGINX hinbekomme.

Gruß Mardor
 
Ja, Quell-IP ist die IP den anfragenden Clients. Die Ziel IP ist immer die IP des NGINX Reverse Proxies. Der Reverse Proxy schaut sich das den GET Request an um dann die Daten an den richtigen TCP Port weiterzuleiten.

Und das muss pro Domain unterschiedlich sein, oder wie?
So ungefähr, es soll eben Domains geben die sollten nur von DE,AU und Schweiz erreichbar sein. Dann soll es Domains geben die sollen auch US, Canada und den rest von Europa beinhalten.

Gruß Mardor
 
Ich gehe nicht davon aus das ich diese Geschwindigkeit beim filtern mit NGINX hinbekomme
Warum nicht die Annahme durch Fakten und Messungen ersetzen? Schau ob du mit dem GeoIP Modul einen Filter hinbekommst der deinen Anforderungen gerecht wird.
Um speziell Benutzer aus China auszusperren kannst du "Platz des Himmlischen Friedens" irgendwo im Content hinterlegen.
 
Zurück
Oben