ipTables Regeln

bwar

Registered User
Hallo!

Ich habe einen Router auf openWRT-Basis und möchte gerne nur bestimmte Ports für die Internetfreigabe zulassen.

Leider komme ich irgendwie mit den Dokus zu ipTables nicht klar. :( Das ist ziemlich komplex für den Einstieg.

Könnte mir bitte jemand helfen?

Wan-Interface: z.B. eth0 IP: 192.168.0.1 SUB: 255.255.255.0
Lan-Interface: z.B. eth1 IP: 192.168.1.1 SUB: 255.255.255.0

Die Clients hinter dem eth1 dürfen nur noch die Ports 13, 20, 21, 22, 53, 80, 81, 110, 143 und 443 benutzen. Der Rest kann ruhig verworfen werden.


Es wäre schön, wenn mir jemand die Regel dafür geben könnte.

mfg

bwar
 
Moischen

Jupp, IpTables ist für den Anfang nicht unbedingt das einfachste. Hier mal ne kurze Erklärung zum allgemeinen.

Folgende allgemeine Regel ist gegeben:
Code:
iptables -A/D INPUT/OUTPUT --protocol --destination --source -i/o -j ACCEPT/DROP/REJECT/LOG

So sieht ungefähr ne Regel aus.
- A/D erstellen (A) bzw. löschen (D) eine Regel.
- Input und Output dürfte klar sein. Hier behandelt man ob es um was geht was bei eth0 rein oder rausgeht.
- Protocol bezeichnet das Protokol. Hier können die gängigen Protokolle TCP, UDP und ICMP angegeben werden.
- Bei Destination wird der Zielport angegeben.
- Source ist die Absendeadresse.
- i/o ist das Interface, also beispielsweise eth1
- und nach j kommt, was damit gemacht werden soll. Zum Beispiel das Paket miti DROP verwerfen.

Möchtest du also ausgehende Anfragen an einen HTTP Server über Port 80 am Interface eth1 freigeben, sehen die Regel dafür wie Folg aus:
Code:
iptables -A INPUT -p TCP -d 0/0 --dport 80 -s 0/0 --sport 1024:65535 -o eth1 -j
So werden nach und nach die Regel aufgebaut.

Und dann hätten wir noch die Policy. Sie beschreibt, was mit alen Paketen gemacht werden soll, welche nicht in einer Regel behandelt werden. Da wir ja nur die Pakete in den Regeln zulassen möchten, müssen wir alle anderen Pakete Dropen. Deshalb dropt man alles in der Policy:
Code:
iptables -P INPUT DROP
iptables -P OUTPUT DROP
ACHTUNG:
Wenn du irgendwas an den Regeln falsch gemacht hast, und beispielsweise vergessen hast den SSH-Port freizugeben, oder in falsch freigegeben hast, hast du dich jetzt ausgesperrt.

So, ich hoff mal ich konnte dir etwas weiterhelfen.

Gruß Mordor
 
Back
Top