PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : iptables & Port Forwarding



Diabolo
04.05.02, 17:09
Hallo

Ich habe da eine Frag in Sachen portforwarding. Ich habe auf meinen Router syndns installiert. Habe einen Webserver hinter dem Router eingerichtet und wollte jetzt das alle anfragen die auf den Router und Port 80 kommen auf den webserver geleitet werden. Leider bekomme ich immer die Seite gezeigt, die auf dem Router liegt und nicht die vom Webserver. Ich habe mal einen Ausschnitt aus meinen Firewallscript dem Beitrag beigefügt. Vielleicht kann mir einer helfen den Fehler zu finden.

Danke

Diabolo

[...]
# Regeln für Masqurading
#

iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
iptables -t nat -A POSTROUTING -o eth0 -j ACCEPT

#
#
# Regeln für INPUT (Erstmal ist alles Verboten)
#

iptables -P INPUT DROP

#
#
# Einzelnes erlauben
#

iptables -A INPUT -i ppp0 -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A INPUT -i eth0 -j ACCEPT

#
#
# Setzen der Regeln für Output (Erst mal ist alles Verboten)
#

iptables -P OUTPUT DROP

#
#

iptables -A OUTPUT -o ppp0 -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A OUTPUT -o eth0 -j ACCEPT

#
#
# Setzen der Regeln fürs Forwarding
#

iptables -P FORWARD DROP

#

iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

iptables -A FORWARD -i eth1 -o eth0 -p tcp --dport 80 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

iptables -A PREROUTING -t nat -p tcp -d 192.168.1.1 --dport 80 -j DNAT --to 192.168.10.3:80

[...]

howlcoyote
08.05.02, 13:27
Von wo rufst Du die Seite denn ab? Bist Du Dir sicher, dass sie nicht mehr im Cache liegt?

Nehmen wir einmal an wir haben ein Netz 192.168.0.1/24, daß an eth0 am Linux gateway angeschlossen ist. Der Linux GW ist mit dem Internet über eth1 verbunden. Wir wollen nun den Verkehr von Port 80 zum Webserver 192.168.0.1 und alle SMTP Anfragen zum Mailserver 192.168.0.2 redirecten. Einen SSH-Server haben wir zusätzlich noch auf 192.168.0.3.

iptables -A PREROUTING -t nat -p tcp -i eth1 --dport 80 -j DNAT --to 192.168.0.1:80
iptables -A PREROUTING -t nat -p tcp -i eth1 --dport 25 -j DNAT --to 192.168.0.2:25
iptables -A PREROUTING -t nat -p tcp -i eth1 --dport 22 -j DNAT --to 192.168.0.3:22

Die erste Zeile bewirkt, dass alle Requests auf Port 80 auf das externe Interface eth1 (oder z.B. ppp0) nach 192.168.0.1 weitergeleitet werden. Dasselbe gilt für Port 25 (SMTP), der auf Port 25 von 192.168.0.2 weitergeleitet wird und zum Schluss haben wir noch Port 22... ;)

Diabolo
08.05.02, 20:00
Hi

Ich habe versucht die Seite von einem Freund aus aufzurufen, Ich bekomme immer angezeigt die Seite kann bla bla bla....

Ich kann dir ja mal meine neuen Regeln posten, die oben sind nicht mehr da.

[..]
$IPTABLES -t nat -P POSTROUTING DROP
$IPTABLES -t nat -A POSTROUTING -o $ETHIFPPP -j MASQUERADE
$IPTABLES -A PREROUTING -t nat -i $ETHIFPPP -p TCP --dport 80 -j DNAT --to 192.168.10.3:80
[...]

[...]

$IPTABLES -A FORWARD -i $ETHIFPPP -o $ETHIFINT -p TCP --sport 80 -j ACCEPT
$IPTABLES -A FORWARD -i $ETHIFINT -s 192.168.10.3 -j ACCEPT
$IPTABLES -A FORWARD -o $ETHIFINT -d 192.168.10.3 -j ACCEPT

[...]

Ich raff das nicht mehr, besonders da am Montag die Seite mal angezeigt wurde. und seitdem hab ich nichts geändert.

cu Diabolo