PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Iptables-DROP Probleme!



BruderPetrus
19.12.02, 13:49
Hallo alle miteinander!

Stelle gerade einen Webserver auf. Möchte Iptables als Firewall verwenden. Funktioniert auch, jedoch gibt es Probleme mit DROP.

Ich möchte, dass die INPUT-Kette am Ende alles droppt. Die Regeln, die davor eingefügt werden, machen ein ACCEPT.

Das Problem ist, dass sobald ich die DROP-Regel (oder DROP-Policy) habe, einige Vorgänge sehr langsam werden. So zum Beispiel:

- login per SSH. Es dauert auf einmal mehrere Sekunden bis die Passwort-Abfrage kommt.

- Wartung per Webmin verlangsamt sich extrem, sobald irgendwas geändert wird.

- Datenbankeinträge in Mysql (PHP, Apache) dauern ewig (das habe ich am aktuellen System noch nicht beobachtet, hatte das Problem aber schon früher einmal auf Yellowdog (MAC), dachte, die Distribution sei schuld, doch vermutlich wird das nun auch so sein).

System: Redhat 7.2, P4-2400Mhz, 512MB, alles Luxus quasi.

Hier als Beispiel die Regeln:

iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 10000 -j ACCEPT
iptables -P INPUT DROP

Wäre ja ganz einfach.
Muss man da zuerst noch irgendwas anderes erledigen, damit droppende FW-Regeln das System nicht bremsen? Oder kapier ich einfach was nicht?

Hoffe auf Eure Hilfe
BP

Bauchi
19.12.02, 14:11
das problem ist, das du die dns query's nicht durchlässt.. und ssh und viele andere services gern checken würden wer mit ihnen redet ...

iptables -I INPUT -p TCP --sport 53 -j ACCEPT
iptables -I INPUT -p UDP --sport 53 -j ACCEPT

oder halt explizit mit den adressen deiner nameserver ..

iptables -I INPUT -s NAMESERVER -p TCP --sport 53 -j ACCEPT
iptables -I INPUT -s NAMESERVER -p UDP --sport 53 -j ACCEPT

was aber bei dhcp connections via dsl und so uncool ist ...

also die ersten 2 regeln ...

Jinto
19.12.02, 15:26
DROPPEN? Bei einem Webserver? Mal davon abgesehen, dass ich bei den Clients schon kein Verständnis dafür habe, noch weniger versteh ich den Sinn bei einem Webserver.

Noch so ein toller "Anbieter" wie z. B. GMX oder Intel.

Verwende REJECT, verwirf nicht alle icmp-Nachrichten, versende gew. icmp-Nachrichten, schalte Reverselookup aus und lasse DNS Abfragen zu.

HTH

BruderPetrus
19.12.02, 22:27
Danke für die Tips, werde es gleich probieren...

Hi Jinto. Ist mir auch schon vorgekommen, dass droppen nicht unbedingt die höflichste Form ist, noch dazu bei einem Webserver. Iptables ist für mich noch relativ neu. Die Literatur, die ich bisher gesehen habe kennt aber nur ACCEPT und DROP (neben QUEUE und RETURN). Sehe REJECT gerade in der manpage. Werde es mal versuchen. Bin aber auch in den Howtos hauptsächlich über DROP gestolpert. Habe ich nur den Eindruck oder wird REJECT kaum erwähnt, -warum?

Das mit dem "tollen Anbieter" check ich nicht :-). Meinst du damit Redhat?

Und dann noch das mit dem Reverselookup. Eine kurze Aufklärung, was das genau ist, bzw. Link wo ich mehr darüber nachlesen kann wäre nett.

Grü
BP

BruderPetrus
19.12.02, 22:40
Bin begeistert!

Das mit dem Port 53 dürfte es gewesen sein. Hab ähnliches zwar früher schon mal probiert, dürfte aber Mist gebaut haben, denn damals hat das nicht funktioniert. Aber jetzt gehts.

Danke nochmals.

Jinto
19.12.02, 23:48
Mit tolle Anbieter meinte ich schon die genannten (nur 2 Beispiele von vielen), die Probleme kannst du hier im Forum immer wieder nachlesen: Warum kann ich mich nicht zu GMX, Yahoo, whatever verbinden. Andere Server funktionieren doch, ....

Du hast Recht, dass es als Default nur DROP oder ACCEPT gibt. Du bist selbst verantwortlich dafür, worauf du reagierst (wie bei jeder deiner Regeln). Gemäß den grundsätzen:
1) Alles erlaubt, was nicht explizit verboten ist.
2) Alles verboten, was nicht explizit erlaubt ist.
REJECT als default Policy geht vermutlich aufgrund der verschiedenen Protokolle nicht (ist ja nicht eine Regel sondern für jedes Protokoll eine andere)

Wenn schnell mit den ICMP Regeln gehen soll, dann ist Punkt 1 das richtige (nur für icmp). Wenns ruhig Zeit kosten darf, dann Punkt2

Warum Reject nicht im notwendigen Maße erwähnt wird, k. A. vielleicht wollen die Consultants auch Geld verdienen? :D
Sind wir aber mal ehrlich, wenn jeder entsprechend aufgeklärt wäre und nicht mit markigen sprüchen ala "Angriff auf Port xy festgestellt", "Sie sind nicht stealth", etc in Panik versetzt würde, dann würde man eine ganze Branche ruinieren (u.a. Hersteller der tollen personal Firewalls). Zudem müsste ich dann auch auf solche Sätze verzichten wie: "geh sterben" (gelesen in dcsf und/oder dcsm), dass will ich nicht. Deswegen: get excited :D:D

Reverse lookup:
Der Versuch einer IP den ihr entsprechenden DNS-Namen zuzuordnen.

PS: Trotz das ich SuSE, Debian und Gentoo einsetze, habe ich nichts gegen Red Hat ;) Also nur nicht nervös werden.

BruderPetrus
20.12.02, 09:08
Ich und nervös!? Zum nervös werden braucht man noch Nerven. Die hab ich allerdings schon lange weggeschmissen.:ugly: