Verständnisproblem bei ACLs bei HAProxy (mit PFSense)?
Hallo Leute,
ich versuche mich gerade mit HAProxy, genauer gesagt mit dem HAProxy Package in einer PFSense. Folgendes Szenario: Ich habe einen Webserver (Headwind MDM), den ich über den Proxy zugänglich machen möchte und etwas reglementieren möchte. Der Server hat die IP 192.168.250.50, die PFSense hat die 192.168.250.60. Ich habe ein Backend eingerichtet, was auf den Server zeigt und habe jetzt etwas Schwierigkeiten bei dem Frontend, genauer gesagt bei den ACLs. Nehmen wir jetzt folgendes Beispiel:
Der Domänenname lautet mobile.myweb.de und ich möchte jetzt die Seite mobile.myweb.de/#/summary über den Proxy sperren. Also habe ich im Frontend folgendes definiert:
Ich hab das jetzt so verstanden, dass wenn der Hostname "mobile.myweb.de" ist und der Pfad mit "summary" aufhört, dass dann eine 404 Fehlermeldung rausgehauen wird. Wenn ich nun jedoch "https://mobile.myweb.de/#/summary" aufrufe, komme ich auf die Seite druch. Stelle ich die Expression um auf "Path contains", dann ist die Seite geblockt. Ich hab es auch schon mit "summary/" probiert oder "/summary" als Wert bei "Path ends with", jedoch will das bei mir nicht funktionieren. Gleiche Probleme habe ich auch mit "path starts with". Hab ich hier etwas übersehen?
[EDIT]
Wobei ich mich korrigieren muss: bei "Path contains" wird nur die Seite nicht korrekt geladen (Frame von Headwind MDM ist da, Inhalt ist leer), jedoch erscheint kein Fehler 404...
ich versuche mich gerade mit HAProxy, genauer gesagt mit dem HAProxy Package in einer PFSense. Folgendes Szenario: Ich habe einen Webserver (Headwind MDM), den ich über den Proxy zugänglich machen möchte und etwas reglementieren möchte. Der Server hat die IP 192.168.250.50, die PFSense hat die 192.168.250.60. Ich habe ein Backend eingerichtet, was auf den Server zeigt und habe jetzt etwas Schwierigkeiten bei dem Frontend, genauer gesagt bei den ACLs. Nehmen wir jetzt folgendes Beispiel:
Der Domänenname lautet mobile.myweb.de und ich möchte jetzt die Seite mobile.myweb.de/#/summary über den Proxy sperren. Also habe ich im Frontend folgendes definiert:
1.)
Name: HostIsMobile
Expression: Host Starts With
CS: no
not: no
Value: mobile.myweb.de
2.)
Name: PathIsSummary
Expression: Path Ends With
CS: no
not: no
Value: summary
Aktionen:
1.)
Action: UseBackend
Parameters: HeadwindMDM (= Name es Backends)
Condition: HostIsMobile !PathIsSummary
2.)
Action: http-request deny
Parameters: deny_status 404
Condition: HostMobile IsSummary
Ich hab das jetzt so verstanden, dass wenn der Hostname "mobile.myweb.de" ist und der Pfad mit "summary" aufhört, dass dann eine 404 Fehlermeldung rausgehauen wird. Wenn ich nun jedoch "https://mobile.myweb.de/#/summary" aufrufe, komme ich auf die Seite druch. Stelle ich die Expression um auf "Path contains", dann ist die Seite geblockt. Ich hab es auch schon mit "summary/" probiert oder "/summary" als Wert bei "Path ends with", jedoch will das bei mir nicht funktionieren. Gleiche Probleme habe ich auch mit "path starts with". Hab ich hier etwas übersehen?
[EDIT]
Wobei ich mich korrigieren muss: bei "Path contains" wird nur die Seite nicht korrekt geladen (Frame von Headwind MDM ist da, Inhalt ist leer), jedoch erscheint kein Fehler 404...
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 81076815147
Url: https://administrator.de/contentid/81076815147
Ausgedruckt am: 21.11.2024 um 22:11 Uhr
5 Kommentare
Neuester Kommentar
Zitat von @CyborgWeasel:
Kann es sein, dass HAProxy ein Problem mit der # im Pfad hat?
Nein, in RFC 3986 heißt es:
As with any URI, use of a fragment identifier component does not imply that a retrieval action will take place. A URI with a fragment identifier may be used to refer to the secondary resource without any implication that the primary resource is accessible or will ever be accessed.
Der Fragment Teil kommt also nicht beim Server an, da er vom Client verarbeitet wird.
Zitat von @CyborgWeasel:
Ah ok. Dh. es gibt so ohne weiteres gar nicht die Möglichkeit, über einen Reverse Proxy die entsprechende Seite /#/summary zu blocken?
Das hat nichts mit dem Reverse Proxy zu tun, sondern trifft auch bei einem Webserver zu. Fragment identifier kommen nicht an. Das zeigen auch die Logbücher.