PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : IPs blocken



C_h_r_i_s
09.06.02, 01:43
hiho.

ich möchte den zugriff auf eine ip vom LAN im internet blocken. das soltle dohc eigentlich so funktioneiern:

iptables -A OUTPUT -d xxx.xxx.xxx.xxx -o ppp0 -j DROP

also dann sollte doch ein ping auf von einem Client auch nicht mehr gehen. machts aber :D

oder ist daran was falsch?

Danke für eure hilfe.

mfg
Chris

Distributer
09.06.02, 09:33
wenn du die lan-ip allgemein eingeben willst, brauch er ne subnetmask dazu

zb 192.168.1.0 mit mask 255.255.255.0 = bereich von 192.168.1.1-9

automatisch (ohne angabe der mask) setzt er ne 32er mask

bernie
09.06.02, 11:11
@Chris

Ich versteh deine Anforderungen nicht ganz, entweder ich bin zu müde oder das ist nicht ganz deutsch :-)

die OUTPUT-Chain behandelt nur Pakete der Maschine auf der die Firewall aktiviert ist. Wenn ich es richtig interpretiere willst du aber auf dem Gateway was sperren. Das musst du in der FORWARD-Chain machen.

Ciao, Bernie

C_h_r_i_s
09.06.02, 15:51
hiho

oh man. jo stimmt ja. output is ja nur pakete vom Linux rechner selber..

mit:

iptables -A FORWARD -d xxx.xxx.xxx.xxx -o ppp0 -j DROP

hats dann geklapt. danke für eure hilfe. aber eine frage hab ich noch :)

wie kann ich erreichen, das das dropen eines paketes von ener ip geloggt wird ?


mfg
Chris

bernie
09.06.02, 18:56
Hi,

das ist kein Problem, einfach als Target (-j) LOG angeben, ich hab das so zum laufen gebracht:

iptables -A FORWARD -j LOG --log-prefix "FORWARD dropped: "

LOG ist ein non-terminating (oder so ähnlich) Target, das heisst, dass es ausgeführt wird aber nichts tut ausser loggen. Im Normalfall wenn eine Regel greift wird mit dem nächsten Paket am Anfang der Rules wieder angefangen. Bei LOG wird einfach weiter gemacht wie wenn nichts wäre.

Die Log-Daten werden ins Syslog geschrieben und schauen etwa so aus:

FORWARD dropped: IN=eth0 OUT=eth1 SRC=xxx.xxx.xxx.xxx DST=xxx.xxx.xxx.xxx LEN=48 TOS=0x00 PREC=0x00 TTL=104 ID=41211 DF PROTO=TCP SPT=3425 DPT=80 WINDOW=16384 RES=0x00 SYN URGP=0

Ich hab den Log-prefix reingegeben, damit man das syslog besser durch "grep-pen" kann.

Ein Problem habe ich damit, aber leider: Bei mir wird parallel in das Syslog und auf die Konsole geschrieben, und das kann ich leider nicht abdrehen. Grundsätzlich ist es mir ja egal, weil die Maschine eh nur Firewall ist, aber wenn jemand einen Tipp hat wie ich das wegbekomme, wärs nett.

Ciao, Bernie

C_h_r_i_s
09.06.02, 22:51
oki. das heist, wenn ich
iptables -A FORWARD -d xxx.xxx.xxx.xxx -o ppp0 -j LOG
iptables -A FORWARD -d xxx.xxx.xxx.xxx -o ppp0 -j DROP

mache, heist das es wird gelogt und gedropt.

danke für deine hilfe.

mfg.
Chris

bernie
10.06.02, 09:15
Hi,

genau so funktioniert das du brauchst immer noch ein "echtes" Target nach einem LOG, wenns wirklich was tun soll.

Ciao, Bernie

Timbo
11.06.02, 21:16
Hi Folks,

iptables -A FORWARD -d xxx.xxx.xxx.xxx -o ppp0 -j DROP

muss das nicht -i ppp0

d.h.

iptables -A FORWARD -d xxx.xxx.xxx.xxx -i ppp0 -j DROP


heisen?

-i ppp0 für interface ppp0

Timbo

bernie
12.06.02, 11:47
Hi,

auf die Falle bin ich am ersten Tag meiner Firewall-Spielereien auch reingefallen:

-i heisst incoming-interface und
-o heisst outgoing-interface.

nicht nur "Interface".

Ciao, Bernie

Timbo
13.06.02, 06:16
Hi bernie X

ah ja, dann haben die das im Kernel 2.4 iptables
wohl geaendert, denn bei ipchains gibts da nur i fuer Interface.


Thx Dir

Timbo