pf "hängt" sich auf

Fughal

New Member
Probleme mit pf

Hallo zusammen,

ich habe eine Stealth Bridge mit OpenBSD 3.6 mit 2 Intel EthernetExpress Pro 100 Adaptern, beide logischerweise ohne IP Zuweisung.
Die Bridge trennt internes Netzwerk im privaten IP Bereich (192.168.x.y) vom VPN Router bzw DSL Router (2 getrennte Geräte).
Die Router haben ebenfalls private IP Adressen aus dem gleichen Bereich.
Soweit so gut die Verbindung zu den Routern funktioniert einwandfrei und die Dienste bzw die zugehörigen Pakete die ich in
pf.conf gesperrt habe werden geblockt. Nun wollte ich einen Webserver auf die "öffentliche" Seite stellen der aber regelmässig Daten aus dem Internen Netzwerk aktualisieren muss. Der Server hat ebenfalls 2 Intel Karten beide auf den Ip Bereich 192.168.x.y konfiguriert. für Interface 1 habe ich in pf.conf festgelegt welche Ports respektive Dienste ins Interne Netz dürfen. Interface 2 darf nicht ins Interne Netzwerk dieses wird als Verbindung via Portforwarding vom Router für den Apache genutzt. Soweit auch kein Problem. Nun sobald aber der Server größere Datenmengen aus dem Internen Netzwerk zieht "hängt" sich pf auf, will heissen jeglicher Traffic (In/out) an der Bridge bricht ab. pflog zeigt keine blocks an, es ist als ob pf einfach nichts mehr macht. Das Verwunderliche ist auch über den VPN Router und die DSL Verbindung läuft viel Traffic ins Interne Netz und wieder raus aber da passiert nichts. Nur ein Neustart von pf bzw der ganzen Bridge hilft. Was läuft da schief?

Vielen Dank schonmal
 
Mal eine Zwischenfrage. Warum hat dein Webserver 2 NICS? Wenn ich das richtig verstanden habe, sind auch auf dem Webserver pf-rules drauf, die eine Kommunikation mit dem internen Netz Verhindern sollen. Nimm mal die pf-rules vom Webserver weg und erlaube auf der Bridge beide IP-Adressen des Webservers incoming. Wenn das jetzt funktioniert, ist dein Ruleset falsch.
 
Der Webserver hat 2 NIC ein Interface zur Bridge (auf der Bridge freigegeben) und eins zum Router (auf der Bridge geblockt) der Router forwarded auf das 2. Interface. Soll sozusagen nochmal eine Trennung zum internen Netz hin sein.
Auf dem Webserver läuft kein pf da das gar keine BSD Machine ist. ;)
Grundsätzlich geht das ganze ja, der Webserver ist erreichbar aus dem Internet her und nicht aus dem Internen Netzwerk (ich meine hier den http Dienst nicht den Rechner an sich) und vom Webserver aus kann ich via SMB oder ftp auf mein Internes Netzwerk zugreifen solange ich keine großen Datenmengen kopiere.
 
Zuletzt bearbeitet:
Die zweite NIC kannst du dir sparen, da sie im gleichen Subnetz liegt wie die erste (oder?). Damit erreicht du keine wirksame Trennung. Ein weiterer Punkt ist, dass du mit zwei NICs im gleichen Subnetz deine Routen selbst biegen musst. Das müssen Interface-gebundene Routen sein. Also "route add homenetz nach eth0" und "route add default eth1". Eines deiner Probleme bei deiner Konfig liegt nämlich im Routen. Liegen zwei NICs im selben Netz, wird über beide Karten gebalanced. Somit erzeugst du auf der BridgeFw tonnenweise ungültige states. Du hast zwar auf dem Webserver dem PF untersagt bestimmte Pakete auf der einen Karte ins Heimnetz zu lassen, aber generell wird erst die Routingentscheidung getroffen und anschließend läuft der Filter drüber. Die Routingentscheidung NIC1 oder NIC2 (?) wird nur auf IP Ebene getroffen. Völlig unabhängig ob im Payload http oder ftp transportiert wird.

Ich weiß nicht ob das verständlich ausgedrückt war, aber ich hoffe das hilft dir.
 
Zurück
Oben