WebServer funktioniert hinter OpenBSD Firewall nicht

Captain Sifff

New Member
Moin!
Ich möchte einen apache2 Webserver hinter einer OpenBSD 3.4 Firewall betreiben.
Ich hab' dazu auf der OpenBSD Homepage auch ein HowTo gefunden, das mein Problem ziemlich gut beschreibt: http://www.ie.openbsd.org/faq/pf/example1.html
Das Problem ist nur: Es funktioniert nicht!!!
Von anderen Rechnern im Netz kann ich eine Verbindung zu meinem WebServer über desen Netzinterne IP herstellen
Von meinem Router kann ich mit lynx ebenfalls eine Verbindung zu dessen Netzinterner IP herstellen.
Meine Domain ist auch korrekt registriert, denn ich kann auf meinem Router mit "nc -l 80" auf die Anfragen meines Browsers reagieren. Aber ich krieg mit keinem Browser eine Verbindung zu meinem WebServer. Ich krieg nur die Meldung: "keine Verbindung zu Rechner möglich"
Um den Port zu forwarden lade ich folgende Regeln mittels anchors dazu:
web.redirect
web.redirect:
xt_if = "tun0"
WebServer = "192.168.0.33"
IntNet = "192.168.0.0/24"

rdr on $ext_if proto tcp from !$IntNet to any port 80 -> $WebServer port 80

und:

web.passin
Ext = "tun0"

pass in quick on $Ext inet proto tcp from any to any port 80 keep state

Danke!
 

Captain Sifff

New Member
Fehler gefunden

hmmpf, ok das OpenBSD Tutorial funktioniert doch, ich kann bloß mit keinem Rechner innerhalb meines Netzes auf meineDomain zugreifen, jeder außerhalb kann das. Gibt's 'ne Möglichkeit, das ich von meinem Rechner im Netz auf meine Domain zugreifen kann ?
 

SierraX

Well-Known Member
Captain Sifff schrieb:
hmmpf, ok das OpenBSD Tutorial funktioniert doch, ich kann bloß mit keinem Rechner innerhalb meines Netzes auf meineDomain zugreifen, jeder außerhalb kann das. Gibt's 'ne Möglichkeit, das ich von meinem Rechner im Netz auf meine Domain zugreifen kann ?
Was verstehst du unter 'deiner Domain'?
Klappt der Zugriff direkt über IP-Adresse? Wenn ja mußt du nur die hosts-datei des zurgreifenden Rechners anpassen. Normal sollte die interne Domain keiner im Internet vorhandenen entsprechen, da es sonst zu Problemen mit dem Internetzugriff kommen kann. Hängt mit der Abarbeitung der Dateien zusammen.
 

Captain Sifff

New Member
Ich sitze in einem 192.168.0.0 Netzwerk hinter einem OpenBSD Router.
Es gibt 3 Rechner Skynet(meiner) HAL9000(WebServer) und den Router(mit DHCP und einem "Caching Nameserver").
wenn ich im Konqueror http://hal9000 eingeb' komm ich bei meinem WebServer raus und seh' meine Homepage. Bassd. Geb' ich jetzt aber in meinem Browser http://Domain.de.vu (nur ein Platzhalter) ein, kommt die Meldung: " Keine Verbindung zu http://Domain.de.vu .
Irgendwelche Ideen, woran das liegen könnte ?
 

SierraX

Well-Known Member
Und was für einen Dienst verwendest du, um deine Domain an deine DSL-IP weiterzuleiten?
Und hast du deinem Router schon mal 'gesagt' das er alle Anfragen aus dem Internet auf dem Port 80 auf die 192.168.0.33 umleiten soll?
 

Captain Sifff

New Member
Ich hab' die Domain bei DynDNS registriert, und verwende ddclient zum Registrieren.
port forwarding funktioniert ja.
Jeder kann aus dem Internet auf meine Homepage zugreifen, außer mir aus meinem eigenen Netz heraus.
 

veitw

Member
Captain Sifff schrieb:
xt_if = "tun0"
WebServer = "192.168.0.33"
IntNet = "192.168.0.0/24"

rdr on $ext_if proto tcp from !$IntNet to any port 80 -> $WebServer port 80


Danke!

Die rule fasst nicht, nicht für Rechner aus deinem LAN, da die Packete nie das externe Interface erreichen, 192.168.0.33 biegt nämlich vorher ins int_if ab, bzw. verlässt es gar nicht. Füge eine zusätzliche rdr rule auf das interne Interface hinzu.
zb.:
rdr on Int_if proto tcp from $IntNet to $ext_ip port 80 -> $WebServer

wobei ext_ip deine externe IP ist, wie du das jetzt mit ner dynamischen IP hinkriegst, kann ich dir jetzt aussem Stehgreif auch nicht sagen.

Aber so sollte es mit den Rechnern aus dem Lan funktionieren.

Oder du benutzt die /etc/hosts dafür. Indem du auf jedem Rechner deinedomain.dyndns.org auf 192.168.0.33 setzt, wenn file vor bind benutz wird.
 
Oben