iptables - weiterleiten von ports

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
Babelduo
Beiträge: 518
Registriert: 25.01.2004 17:01:37

iptables - weiterleiten von ports

Beitrag von Babelduo » 06.02.2005 14:15:36

hallo,

ich hatte schonmal einen thread offen wo mir aber nicht so richtig geholfen
werden konnte.

ich möchte einfach (oder auch nicht einfach...) alle anfragen auf einen port an
einen rechner ins netzwerk weiterleiten!

habe mir dazu ein script von
http://www.harry.homelinux.org/modules. ... _Generator
generieren lassen...

das script findet sich hier:
http://mitglied.lycos.de/total/firewall

ich denke mal es kommt vor allem hier aufs NAT an oder? :

Code: Alles auswählen

    # NAT fuer HTTP
    iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 2222 -j DNAT --to-destination 192.168.0.11
    iptables -t nat -A POSTROUTING -o eth0 -p tcp --dport 2222 -j SNAT --to-source $LAN_IP
    iptables -A FORWARD -i ppp0 -m state --state NEW -p tcp -d 192.168.0.11 --dport 2222 -j ACCEPT
nur leider klappt das weiterleiten erst garnicht!

192.168.0.13 ist mein linux rechner und router...
192.168.0.11 ist mein 2t rechner wo zum test gerade knoppix mit einem
service auf port 2222 läuft und auf eine verbindung wartet...

an dem script dürfte doch nichts falsch sein oder?


ich hoffe ihr könnt mir helfen!

danke, Babelduo


p.s:
selbst mit dem scitp beispiel von
http://www.debianforum.de/wiki/?page=in ... bianmanier
kommt mein 2t rechner nur ins internet - ports werden aber nicht zu ihm weitergeleitet!
habe natürlich alles im script angepasst.
Wenn ich alles sehen könnte würde ich lernen die Augen zu schließen...

Benutzeravatar
DynaBlaster
Beiträge: 958
Registriert: 25.03.2004 18:18:57
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: DF0://dynablaster.adf

Beitrag von DynaBlaster » 06.02.2005 16:52:15

Wenn ich das richtig sehe, verbietet folgende Regel ein Forwarding:

Code: Alles auswählen

iptables -A FORWARD -i ! ppp0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
Denn wenn ich die Syntax richtig deute, werden nur verbindungsaufbauende Pakete, die nicht (wegen -i ! ppp0) an ppp0 ankommen erlaubt. Wenn also dein http-Server auf Anfragen wartet, musst du den Verbindungsaufbau über das Device ppp0 in der FORWARD-Chain erlauben. Und dann ist diese Regel auch sinnlos:

Code: Alles auswählen

# bwt
iptables -A INPUT -i ppp0 -m state --state NEW -p tcp --dport 2222 -j ACCEPT
denn auf dem Router selbst läuft ja schließlich kein Dienst auf Port 2222. Korrigiert mich, wenn ich einen Denkfehler drin habe.

Babelduo
Beiträge: 518
Registriert: 25.01.2004 17:01:37

Beitrag von Babelduo » 07.02.2005 03:06:57

ja also deine überlegungen sind an sich schon richtig...
nur in der praxis gehts leider net :-/

Code: Alles auswählen

# bwt
iptables -A INPUT -i ppp0 -m state --state NEW -p tcp --dport 2222 -j ACCEPT 
ist überflüssig - das denke ich auch

wenn ich anstatt

Code: Alles auswählen

iptables -A FORWARD -i ! ppp0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT 
das hier mache

Code: Alles auswählen

iptables -A FORWARD -i ppp0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
klappt das weiterleiten von ports auf den 2t rechner nicht, und der 2t rechner kann
nicht aufs internet zugreifen!


also ich fände es nett wenn jemand sein script postet mit dem er mittels iptables
ports weiterleitet. es sollte natürlich bei ihm funktionieren ;)

danke schonmal,
Babelduo
Wenn ich alles sehen könnte würde ich lernen die Augen zu schließen...

Svenny
Beiträge: 320
Registriert: 11.09.2003 19:18:55

Beitrag von Svenny » 07.02.2005 16:02:24

bei mir sieht das wie folgt aus:

Code: Alles auswählen

    iptables -t nat -A PREROUTING -i br0 -p tcp --dport 2000 -j DNAT --to-destination 192.168.0.2
    iptables -t nat -A POSTROUTING -o br1 -p tcp --dport 2000 -j SNAT --to-source 192.168.0.1
    iptables -A FORWARD -i br0 -m state --state NEW -p tcp -d 192.168.0.2 --dport 2000 -j ACCEPT
routet port 2000 auf die 192.168.0.2
Bashian Roulette? (v2)
((RANDOM%6)) || rm -rf /

Babelduo
Beiträge: 518
Registriert: 25.01.2004 17:01:37

Beitrag von Babelduo » 07.02.2005 21:14:23

ne so nen mist - klappt auch nicht!
obwohl ich ja in etwa auch das gleiche hatte... bis auf die ips und
die interfaces...

was brauche ich denn alles um NUR weiterzuleiten... also keine weiteren
firewalleinstellunen oder routereinstellungen.

nur damit ein port an 192.168.0.11 weitergeleitet wird!

denn wenn das klappt müsste es ja am ganzen script liegen!

brauche ich zum weiterleiten nur diese zeilen hier?! :

Code: Alles auswählen

    # NAT
    iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 2222 -j DNAT --to-destination 192.168.0.11
    iptables -t nat -A POSTROUTING -o eth0 -p tcp --dport 2222 -j SNAT --to-source $LAN_IP
    iptables -A FORWARD -i ppp0 -m state --state NEW -p tcp -d 192.168.0.11 --dport 2222 -j ACCEPT
habe die 3 zeilen einfach mal so eingegeben - aber klappt auch nicht :-/


ich hoffe könnt mir helfen - denn das finde ich ziemlich komisch!

danke, Babelduo


p.s:
falls es was hilft... habe aol ( ja wegen meinen eltern :-/ ) und benutzte
die rp-pppoe-3.5 treiber um online zu kommen!
Wenn ich alles sehen könnte würde ich lernen die Augen zu schließen...

Svenny
Beiträge: 320
Registriert: 11.09.2003 19:18:55

Beitrag von Svenny » 08.02.2005 14:17:07

na, so einfach eingeben geht natürlich nicht, musst es schon in dein iptables script einbauen
Bashian Roulette? (v2)
((RANDOM%6)) || rm -rf /

Babelduo
Beiträge: 518
Registriert: 25.01.2004 17:01:37

Beitrag von Babelduo » 09.02.2005 13:32:28

nagut, aber ich habe ja generierte scripts benutzt, und beispiele von anderen
usern benutzt... und es hat nie geklappt!

langsam denke ich schon ich bin total verpeilt :-/

naja ich kann mit rinitd weiterleiten, leider ist das dann eher wie ein proxy
und das ist nicht ganz mein fall!

ich fände es trotzdem nochmal nett wenn jemand sein ganzes iptables-script
posten würde mit dem er in seinem privatem netzwerk ports weiterleitet!


aber danke schonmal!

Babel

p.s: brauche ich denn was bestimmtes? bestimmte module?!
Wenn ich alles sehen könnte würde ich lernen die Augen zu schließen...

Antworten