Cloudflare und pfsense?
Hallo zusammen,
vielleicht kann mich jemand erleuchten.
Ich habe hier ein kleines Projekt für eine Schule.
Zuvor eingerichtet war:
Schüler-PCs waren per hosts-Datei vom Internet abgeschnitten, also nur drei benötigte Seiten mit ihren IPs waren eingetragen.
Das hat lange gut funktioniert, bis die zentrale Schulverwaltung beschlossen hat "die Welt besser zu machen".
Leider hat man nicht beim Hintergrundsystem angefangen - um erstmal Silverlight abzulösen.
Es gab also mit der hosts-Datei Probleme die Seite zu erreichen und nach erster Diagnose nun einen IP-Range um die Seite anzusteuern.
Der Versuch die Freigaben über die Kindersicherung der vorhandenen Fritz!Box zu lösen funktionierte nicht, die PCs haben die Box dermaßen bombardiert, dass von der gar nichts mehr zurückkam.
Also war die Idee geboren die PCs hinter einer kleinen pfsense zu verschanzen und über Aliase nur die erlaubten Seiten einzutragen.
Dies klappt grundlegend, bei der Analyse der Freigaben fand ich dann Hinweise auf Cloudflare und erweiterte die zugelassenen Bereiche um deren IP-Ranges: https://www.cloudflare.com/ips/
Hinzu kamen die offiziell benötigten IP-Adressen der Hintergrundserver und die öffentlichen DNS Adressen.
Leider fehlt in bestechender Regelmäßigkeit (meist im IE11 - der wegen Silverlight benötigt wird), das Loginfenster auf der Seite: https://www.los.de/lrs-software
Mal ist es da, mal nicht, mal verschwindet es wenn man die Seite aktualisiert, mal lädt die Seite ewig bis es erscheint oder eben nicht erscheint.
Der Zustand ist nicht konsistent, laut der zentralen Entwicklung sind die Restriktionen "zu streng" und es läge an den "ständig wechselnden IPs".
Ändern könne man das nicht, da alles funktioniert wenn man das Internet vollständig geöffnet hat.
Das Logging der pfsense gibt leider auch nicht viel Aufschluss, zu meist wird mit dem Hintergrundserver der Seite kommuniziert und dann kommt spontan von dort einfach keine Antwort mehr an den Client zurück.
Hat schon mal jemand solch phänomenales Konstrukt gehabt?
Sinnvolle Alternativen um jeglichen Traffic zu blocken?
Die PCs sind leider alle uralt, ist zwar schon Windows 10 drauf, aber die sind sehr schnell mit ihren alten HDDs mit allem überfordert was das offene Internet so mit ihnen veranstaltet.
Grüße
ToWa
vielleicht kann mich jemand erleuchten.
Ich habe hier ein kleines Projekt für eine Schule.
Zuvor eingerichtet war:
Schüler-PCs waren per hosts-Datei vom Internet abgeschnitten, also nur drei benötigte Seiten mit ihren IPs waren eingetragen.
Das hat lange gut funktioniert, bis die zentrale Schulverwaltung beschlossen hat "die Welt besser zu machen".
Leider hat man nicht beim Hintergrundsystem angefangen - um erstmal Silverlight abzulösen.
Es gab also mit der hosts-Datei Probleme die Seite zu erreichen und nach erster Diagnose nun einen IP-Range um die Seite anzusteuern.
Der Versuch die Freigaben über die Kindersicherung der vorhandenen Fritz!Box zu lösen funktionierte nicht, die PCs haben die Box dermaßen bombardiert, dass von der gar nichts mehr zurückkam.
Also war die Idee geboren die PCs hinter einer kleinen pfsense zu verschanzen und über Aliase nur die erlaubten Seiten einzutragen.
Dies klappt grundlegend, bei der Analyse der Freigaben fand ich dann Hinweise auf Cloudflare und erweiterte die zugelassenen Bereiche um deren IP-Ranges: https://www.cloudflare.com/ips/
Hinzu kamen die offiziell benötigten IP-Adressen der Hintergrundserver und die öffentlichen DNS Adressen.
Leider fehlt in bestechender Regelmäßigkeit (meist im IE11 - der wegen Silverlight benötigt wird), das Loginfenster auf der Seite: https://www.los.de/lrs-software
Mal ist es da, mal nicht, mal verschwindet es wenn man die Seite aktualisiert, mal lädt die Seite ewig bis es erscheint oder eben nicht erscheint.
Der Zustand ist nicht konsistent, laut der zentralen Entwicklung sind die Restriktionen "zu streng" und es läge an den "ständig wechselnden IPs".
Ändern könne man das nicht, da alles funktioniert wenn man das Internet vollständig geöffnet hat.
Das Logging der pfsense gibt leider auch nicht viel Aufschluss, zu meist wird mit dem Hintergrundserver der Seite kommuniziert und dann kommt spontan von dort einfach keine Antwort mehr an den Client zurück.
Hat schon mal jemand solch phänomenales Konstrukt gehabt?
Sinnvolle Alternativen um jeglichen Traffic zu blocken?
Die PCs sind leider alle uralt, ist zwar schon Windows 10 drauf, aber die sind sehr schnell mit ihren alten HDDs mit allem überfordert was das offene Internet so mit ihnen veranstaltet.
Grüße
ToWa
Please also mark the comments that contributed to the solution of the article
Content-Key: 4723065349
Url: https://administrator.de/contentid/4723065349
Printed on: May 25, 2024 at 14:05 o'clock
22 Comments
Latest comment
Also für mich klingt das nach einem Klassenzimmer, dessen Rechner nur auf die Webseiten zugreifen dürfen, die in einer zentral gepflegten Whitelist aufgeführt sind. Alles andere soll verhindert werden, und ist damit geblockt.
Eine einfache Lösung dafür ist z.B. lokal Pi-Hole aufsetzen und das entsprechend konfigurieren. Dann nur noch in allen Clients den Pi-Hole fest als DNS-Server eintragen, fertig.
pfSense kann das natürlich auch, und noch viel mehr. Das Prinzip ist aber in pfSense dasselbe.
Das Problem an dem Ansatz ist nur, dass moderne Webseiten oft so viele externe Abhängigkeiten haben, dass man sich mit sowas das kaputt schießt.
Alternativ kann man in PiHole als auch Pfsense spezielle Blocklisten reinladen, die die bekanntesten nicht jugendfreien Webseiten blocken.
Eine einfache Lösung dafür ist z.B. lokal Pi-Hole aufsetzen und das entsprechend konfigurieren. Dann nur noch in allen Clients den Pi-Hole fest als DNS-Server eintragen, fertig.
pfSense kann das natürlich auch, und noch viel mehr. Das Prinzip ist aber in pfSense dasselbe.
Das Problem an dem Ansatz ist nur, dass moderne Webseiten oft so viele externe Abhängigkeiten haben, dass man sich mit sowas das kaputt schießt.
Alternativ kann man in PiHole als auch Pfsense spezielle Blocklisten reinladen, die die bekanntesten nicht jugendfreien Webseiten blocken.
Dein Regelwerk ist auch etwas unlogisch...
Richtig ist das du mit Aliases arbeitest was das Management vereinfacht. Das kannst du übrigens auch für die Ports machen was das Regelwerk dann noch übersichtlicher macht.
Völlig unlogisch sind aber 4 Regeln in dem gesamten Port Regelwerk.
Es gelten ja immer 3 Grundregeln:
Demnach sind folgende Auffälligkeiten da zu sehen:
Die 2 letzten Regeln führen das gesamte Regelwerk dann so oder so ad absurdum denn dann würde auch eine schlichte "Allow IPv4/v6 Intranet nach Any" auf diesem Interface reichen.
Bzw. da die gesamte Blocking Regel noch davor steht könnte man auch diese 3 letzten Regeln komplett löschen da sie sinnfrei sind.
Relevant sind lediglich die ersten 6 Regeln die überflüssige Regel des internen Traffics schon weggedacht.
Wenn es sich, wie der Kollege @gentoist oben beschreibt, um eine sinnvolle Whitelist handeln soll, dann ist es das obige Regelwerk in der Form natürlich nicht!
Im Falle des TO das man den genauen Traffic Flow auf den Silverlight Server nicht kennt würde man doch idealerweise immer strategisch vorgehen und sich diesen Traffic entweder über die Paket Capture Funktion der Firewall im Diagnostics Menü selber oder mit einem Test Client PC und darauf aktivem Wireshark im Intranet Segment einmal genau anzusehen.
Im Paket Capture filtert man dann einfach nur auf die Client IP. In beiden Fällen erhält man einen sehr genauen Paket Trace der explizit die externen abgefragten IP Adressen und die verwendeten Ports des Login Prozesses (und auch allem anderen) anzeigt.
Damit hat man dann wiederum eine sehr genaue Blaupause für ein sauber funktionierendes Regelwerk an der Firewall.
Versteht man deine Intention des Regelwerkes richtig ist das obige eher große Frickelei als das es das richtig umsetzt was du vorhast.
Richtig ist das du mit Aliases arbeitest was das Management vereinfacht. Das kannst du übrigens auch für die Ports machen was das Regelwerk dann noch übersichtlicher macht.
Völlig unlogisch sind aber 4 Regeln in dem gesamten Port Regelwerk.
Es gelten ja immer 3 Grundregeln:
- Regelwerk wirkt nur inbound
- Es besteht ein explicit deny (Alles was nicht erlaubt ist ist explizit verboten)
- First match wins (Positiver Hit im Regelwerk bewirkt das der Rest nicht mehr abgearbeitet wird)
Demnach sind folgende Auffälligkeiten da zu sehen:
- Regel 4 ist völliger Quatsch, denn interner Traffic aus dem lokalen LAN landet niemals bei einem Router oder Firewall! Wozu auch, denn er muss ja nicht in andere IP Netze. Für den Traffic ist die FW niemals involviert. Diese Regel ist also Blödsinn, da komplett überflüssig weil es niemals diesen Traffic gibt am lokalen LAN Port und kann entfallen.
- Die Dritte von unten blockiert allen Traffic. Aber das ist die eh systemspezifische explicit Deny Regel (s.o.). Ist also auch komplett überflüssig und kann entfallen.
- Die letzten beiden Regeln darunter erlauben dann eh alles aus dem Intranet überall hin für das Intranet. Da fragt man sich wozu dann die oberen Regeln gut sind diese Scheunentor Regeln das so oder so auch alles erlauben?
Die 2 letzten Regeln führen das gesamte Regelwerk dann so oder so ad absurdum denn dann würde auch eine schlichte "Allow IPv4/v6 Intranet nach Any" auf diesem Interface reichen.
Bzw. da die gesamte Blocking Regel noch davor steht könnte man auch diese 3 letzten Regeln komplett löschen da sie sinnfrei sind.
Relevant sind lediglich die ersten 6 Regeln die überflüssige Regel des internen Traffics schon weggedacht.
Wenn es sich, wie der Kollege @gentoist oben beschreibt, um eine sinnvolle Whitelist handeln soll, dann ist es das obige Regelwerk in der Form natürlich nicht!
Im Falle des TO das man den genauen Traffic Flow auf den Silverlight Server nicht kennt würde man doch idealerweise immer strategisch vorgehen und sich diesen Traffic entweder über die Paket Capture Funktion der Firewall im Diagnostics Menü selber oder mit einem Test Client PC und darauf aktivem Wireshark im Intranet Segment einmal genau anzusehen.
Im Paket Capture filtert man dann einfach nur auf die Client IP. In beiden Fällen erhält man einen sehr genauen Paket Trace der explizit die externen abgefragten IP Adressen und die verwendeten Ports des Login Prozesses (und auch allem anderen) anzeigt.
Damit hat man dann wiederum eine sehr genaue Blaupause für ein sauber funktionierendes Regelwerk an der Firewall.
Versteht man deine Intention des Regelwerkes richtig ist das obige eher große Frickelei als das es das richtig umsetzt was du vorhast.
Wireshark spuckt leider ebensowenig etwas aus, denn wenn keine Antwort kommt
Deshalb sniffert man ja auch einmal ohne Filter um zu sehen wie ein kompletter Login Prozess aussieht.Mit Filter sniffert man dann am PC selber und auch parallel am WAN Port der FW per Paket Capture und vergleicht um mal zu sehen WAS denn gesendet wird und was überhaupt durchkommt und was nicht.
Wie gesagt...immer strategisch vorgehen! 😉
Moin,
blöde Frage: Wenn es um Jugenschutz und Filter geht, warum greifst du nicht auf Produkte ala JusProgDNS zurück? Gerade wenn es um Einhaltung der FSK Freigaben gibt, eines der besten Produkte die ich bis dato gesehen habe. Das schöne ist, dass du über das Kundenmenü noch weitere Einstellungen (z.B. Whitelist) vornehmen kannst. Je nachdem wie du es anstellst, kann auch dort Lehrkräfte Internetseiten freischalten, die (temporär) benötigt werden.
Alles andere wird dir früher oder später immer wieder auf die Füße fallen, Zeit und Nerven kosten. Hab schon öfters mit pfSense/OpnSense, Barracuda, etc. gespielt und im Langzeit Test wieder verworfen. Zumal sich heute Abhängigkeiten bei Internetseiten schneller ändern als du reagieren kannst. Und das sage ich dir als ehrenamtlicher ITler für ein paar Schulen.
Gruß,
Dani
P.S. Was hat das Ganzem it Cloudflare zu tun?
blöde Frage: Wenn es um Jugenschutz und Filter geht, warum greifst du nicht auf Produkte ala JusProgDNS zurück? Gerade wenn es um Einhaltung der FSK Freigaben gibt, eines der besten Produkte die ich bis dato gesehen habe. Das schöne ist, dass du über das Kundenmenü noch weitere Einstellungen (z.B. Whitelist) vornehmen kannst. Je nachdem wie du es anstellst, kann auch dort Lehrkräfte Internetseiten freischalten, die (temporär) benötigt werden.
Alles andere wird dir früher oder später immer wieder auf die Füße fallen, Zeit und Nerven kosten. Hab schon öfters mit pfSense/OpnSense, Barracuda, etc. gespielt und im Langzeit Test wieder verworfen. Zumal sich heute Abhängigkeiten bei Internetseiten schneller ändern als du reagieren kannst. Und das sage ich dir als ehrenamtlicher ITler für ein paar Schulen.
Gruß,
Dani
P.S. Was hat das Ganzem it Cloudflare zu tun?
Produkte ala JusProgDNS zurück?
Oder zumindestens einen DNS Filter mit Safe Browsing und App Filter wie Adguard:https://github.com/AdguardTeam/AdGuardHome
https://broadbandforum.co/threads/installing-adguard-home-on-pfsense.205 ...
Moin,
In diesen Fall wirst du wohl oder übel auf Application Control zurückgreifen müssen. Weil eigentlich fast jeder Hansel inzwischen ein CDN am Start hat. Für OpnSense gibt es eine Erweiterung von Zenarmor (Referenz). Ob diese auch für pfSense gibt und funktioniert, weiß ich nicht.
Eigene Applikation für jeweils die drei Seiten einrichten und diese Whitelisten. Alles andere sperren - fertig.
Gruß,
Dani
Es geht nicht um irgendeinen Schutz, es geht darum alles zu blocken und nur das zuzulassen was benötigt wird, das sind eben seit Jahren nur 3 Seiten, ganz früher war mal alles offline - das existiert noch in einer DOS-Box. face-big-smile
Gut, jetzt habe ich es auch verstanden. Nächstes Mal gleich so in die Frage schreiben. In diesen Fall wirst du wohl oder übel auf Application Control zurückgreifen müssen. Weil eigentlich fast jeder Hansel inzwischen ein CDN am Start hat. Für OpnSense gibt es eine Erweiterung von Zenarmor (Referenz). Ob diese auch für pfSense gibt und funktioniert, weiß ich nicht.
Eigene Applikation für jeweils die drei Seiten einrichten und diese Whitelisten. Alles andere sperren - fertig.
Gruß,
Dani
Moin,
Gruß,
Dani
Der IE11 vermeldet Probleme mit der sicheren Verbindung und verweist auf die TLS-Einstellungen.
du machst Witze, oder?! Der Internet Explorer 11 seit 15.06.2022 End of Life und gehört damit auf den Systemen verbannt (Deaktivieren und Aktivieren von Internet Explorer unter Windows). Und sag jetzt bitte nicht, dass einer der drei erlaubten Webseiten nur mit dem Internet Explorer 11 funktionieren. Der IE11 vermeldet Probleme mit der sicheren Verbindung und verweist auf die TLS-Einstellungen.
Die Fehler ist bei Verwendung von Application Control "gewollt". Die Meldung erhalten wir auch bei Palo Alto und Barracuda Firewalls ebenfalls nur im Internet Explorer. Poste doch sicherheitshalber noch einen Screenshot der Meldung.Gruß,
Dani
Moin,
Dem Hersteller würde ich mal auf die Füße treten. Zur Not mit der DSGVO Druck aufbauen. Da bewegt sich auf einmal vieles. Wenn's gar nicht anders geht die Behörden ins Boot holen... kostet zwar Haar aber ist irgendwie auch immer lustig.
Gruß,
Dani
Ist so, muss so, geht nicht anders. face-big-smile
ist evtl. der IE 11 Modus des Edges eine Alternative? Weil spätestens nächstes Jahr, wirst du ein Problem mehr haben?!Dem Hersteller würde ich mal auf die Füße treten. Zur Not mit der DSGVO Druck aufbauen. Da bewegt sich auf einmal vieles. Wenn's gar nicht anders geht die Behörden ins Boot holen... kostet zwar Haar aber ist irgendwie auch immer lustig.
Gruß,
Dani
Moin,
bau dir doch einfach eine Custom App. Einmal mit den Entwickler Tools die verschiedenen URLs protokollieren und diese URLs anschließend ind er CustomApplication hinzufügen, freigeben und fertig.
Gruß,
Dani
bau dir doch einfach eine Custom App. Einmal mit den Entwickler Tools die verschiedenen URLs protokollieren und diese URLs anschließend ind er CustomApplication hinzufügen, freigeben und fertig.
Die "Schulleitung" möchte keinen Druck auf die Zentrale ausüben, aber es geht allen angeschlossenen Schulen so, alles ärgert sich, alles "wuselt" irgendwie drumherum.
Du hast ein großes Herz! Ich wäre da - Ehrenamt hin oder her - nicht zimperlich. Meine Zeit ist schließlich kostbar.Gruß,
Dani
Moin,
Gruß,
Dani
Die URLs in den Entwicklertools habe ich laaaange alle durch, das hilft leider gar nichts. face-sad
damit wir uns nicht missverstehen: Aus allen URLs, die aufgelistet werden, eine CustomApplication bauen und freigeben. Müsste auch in einem der beiden Links beschrieben/erläutert werden?! Mir fehlt bloß aktuell die Zeit es nachzubauen.Gruß,
Dani