Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   iptables: nur bestimmte ports routen (https://www.delphipraxis.net/97047-iptables-nur-bestimmte-ports-routen.html)

geisi 3. Aug 2007 15:15


iptables: nur bestimmte ports routen
 
hi!

verwende einen linux-rechner als router (SuSE 10)
jetzt will ich, dass der linux-router nur http- und ftp-packete weiterleitet (forwarding)

habe mal folgendes getan:
Delphi-Quellcode:
// vorhandene tables löschen
iptables -F

// alle policies auf DROP setzen
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP

// alle verbindungen für das loopback interface erlauben
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
Dann will ich dass weiterleiten von paketen auf dem port 80 erlauben, funktioniert aber nicht

Delphi-Quellcode:
// vom Internet ins lokale Netz
iptables -A FORWARD -p tcp -i eth0 -o eth1 --dport 80 --sport 80 -d 172.16.0.0/24 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

// vom lokalen Netz ins Internet
iptables -A FORWARD -p tcp -i eth1 -o eth0 --dport 80 --sport 80 -s 172.16.0.0/24 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
Info:
eth0 (NIC1) --> geht ins Internet
eth1 (NIC2) --> geht ins lokale Netz
http://www.pro-linux.de/work/firewal.../sv2242246.jpg

Warum komme ich nicht ins internet?
PS: wenn ich die iptables lösche und alles erlaube, komme ich ohne probleme ins internet

DeddyH 3. Aug 2007 15:37

Re: iptables: nur bestimmte ports routen
 
Bist Du Dir sicher, dass Dein lokaler Port 80 ist?

geisi 3. Aug 2007 15:52

Re: iptables: nur bestimmte ports routen
 
die anfrage des browsers wird doch wohl auch auf dem port 80 sein, oder?

DeddyH 3. Aug 2007 15:54

Re: iptables: nur bestimmte ports routen
 
Sicher, der Rechner fragt den Zielport 80 an, der Quellport dürfte aber oberhalb von 1024 liegen. Versuch es mal so:
Delphi-Quellcode:
// vom Internet ins lokale Netz
iptables -A FORWARD -p tcp -i eth0 -o eth1 --sport 80 -d 172.16.0.0/24 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

// vom lokalen Netz ins Internet
iptables -A FORWARD -p tcp -i eth1 -o eth0 --dport 80 -s 172.16.0.0/24 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

geisi 3. Aug 2007 16:06

Re: iptables: nur bestimmte ports routen
 
Hab ich jetzt gemacht, funktioniert trotzdem nicht

http://www.sv-deutschgoritz.at/iptables.jpg

geisi 3. Aug 2007 16:15

Re: iptables: nur bestimmte ports routen
 
Zur Kontrolle, wenn ich die tables lösche und die FORWARD-Policy auf ACCEPT stelle, komme ich ohne probleme ins internet

http://www.sv-deutschgoritz.at/iptables2.jpg

bigg 3. Aug 2007 16:19

Re: iptables: nur bestimmte ports routen
 
Welches Modem verwendest du?

geisi 3. Aug 2007 16:24

Re: iptables: nur bestimmte ports routen
 
es sind noch ein router (der direkt mit dem Modem verbunden ist) und ein switch zwischen meinem linux-router und dem modem, darum glaube ich, dass das problem nicht beim modem liegt!

DeddyH 3. Aug 2007 16:39

Re: iptables: nur bestimmte ports routen
 
Port-Forwarding ist eingeschaltet?
Delphi-Quellcode:
echo "1" > /proc/sys/net/ipv4/ip_forward

geisi 3. Aug 2007 16:45

Re: iptables: nur bestimmte ports routen
 
Ja hab ich. muss an den iptables-einträgen liegen, denn ...

Zitat:

Zitat von geisi
Zur Kontrolle, wenn ich die tables lösche und die FORWARD-Policy auf ACCEPT stelle, komme ich ohne probleme ins internet

http://www.sv-deutschgoritz.at/iptables2.jpg


DeddyH 3. Aug 2007 16:57

Re: iptables: nur bestimmte ports routen
 
Hmmm... vielleicht fehlt noch die Adressübersetzung (hab seit 3 Jahren nix mehr mit iptables gemacht, sorry)
Delphi-Quellcode:
iptables -t nat -A POSTROUTING -p tcp --dport 80 -s 172.16.0.0/24 -j SNAT --to $IP_AndererRouter

geisi 3. Aug 2007 17:05

Re: iptables: nur bestimmte ports routen
 
Danke! habe immer versucht im browser mit http://www.google.at die verbindung ins internet zu prüfen, darum hats auch nicht funktioniert. jetzt habe ich es mit http://209.85.129.104/ versucht, und jetzt funktionierts.

also muss ich nur noch den port für die dns-anfrage öffnen.
das ist der udp port 53, oder?

DeddyH 3. Aug 2007 17:14

Re: iptables: nur bestimmte ports routen
 
Zitat:

Zitat von geisi
das ist der udp port 53, oder?

Richtig.

geisi 3. Aug 2007 17:34

Re: iptables: nur bestimmte ports routen
 
Klappt super!!!
Und jetzt nochmal zusammengefasst:

Um nur das Surfen im Internet zu erlauben müsst ihr folgendes tun:

Delphi-Quellcode:
// iptables-chains leeren
iptables -F

// chain-policies (--> default-wert) auf DROP setzen (trifft keine bedingung zu, wird das packet verworfen)
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP




// den Traffic auf dem TCP-Port 80 (HTTP) erlauben
// vom Internet ins lokale Netz
iptables -A FORWARD -p tcp -i <wan-interfaces> -o <lan-interfaces> --sport 80 -d 172.16.0.0/24 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

// vom lokalen Netz ins Internet
iptables -A FORWARD -p tcp -i <lan-interfaces> -o <wan-interfaces> --dport 80 -s 172.16.0.0/24 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT





// den Traffic auf dem TCP-Port 443 (HTTPS) erlauben
// vom Internet ins lokale Netz
iptables -A FORWARD -p tcp -i <wan-interfaces> -o <lan-interfaces> --sport 443 -d 172.16.0.0/24 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

// vom lokalen Netz ins Internet
iptables -A FORWARD -p tcp -i <lan-interfaces> -o <wan-interfaces> --dport 443 -s 172.16.0.0/24 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT




// den Traffic auf dem UDP-Port 53 (DNS) erlauben
// vom Internet ins lokale Netz
iptables -A FORWARD -p udp -i <wan-interfaces> -o <lan-interfaces> --sport 53 -d 172.16.0.0/24 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

// vom lokalen Netz ins Internet
iptables -A FORWARD -p udp -i <lan-interfaces> -o <wan-interfaces> --dport 53 -s 172.16.0.0/24 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
Viel Spaß!!!!

DeddyH 3. Aug 2007 17:40

Re: iptables: nur bestimmte ports routen
 
Bei FTP wird es schon schwieriger (Active,Passive) ;)
Ich hatte mal nach MonMotha gegooglet, aber die Seite ist leider down. Schade, war als Basis ein super Script.

geisi 7. Aug 2007 12:04

Re: iptables: nur bestimmte ports routen
 
Habe jetzt meine Firewall jetzt unter SuSE Linux 10 vollständig konfiguriert, leider ist die konfiguration weg, sobald ich den server neu starte. Warum bleiben die einträge in der iptables nicht gespeichert?

geisi 24. Aug 2007 19:07

Re: iptables: nur bestimmte ports routen
 
hi!

habe jetzt meinen server neu konfiguriert. habe 2 netzwerkkarten drin: eth1 richtung modem, eth0 in richtung LAN.
wenn ich auf meinem suse-server den befehl ifconfig ausführe bekomme ich 3 schnittstellen angezeigt: eth0, eth1 und dsl0.
wenn ich jetzt bestimmte ports in richtung internet (externe zone) sperren bzw. öffnen will, muss ich die iptables-chains auf die schnittstelle eth1 oder dsl0 legen?


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:00 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz