[linux-l] IP tables

Peter Ross peter.ross at alumni.tu-berlin.de
Do Dez 12 14:12:57 CET 2002


Guten Morgen,

seid gegruesst von einem, der Euch schon zehn Stunden voraus ist, da er 
sich derzeit downunder rumtreibt.

Hier administriere ich eine Reihe Webserver und auch der Office-Firewall 
ist in meine Zustaendigkeit gefallen. Nun, ganz grob gesagt, gab es nur 
ein Rudiment.

Der Datenverkehr war fuer mich zunaechst einmal etwas Blackbox, so dass 
ich erst einmal einen Firewall mit Accept-Policy aufgesetzt habe und immer 
mehr mir bekannte Pakete explizit in Regeln gepackt habe und den "Rest", 
der da nicht reinpasste. geloggt habe.

Das Ganze ist mit einem Debian-Linux und Kernel 2.4.18 und netfilter und 
iptables realisiert. Dieses war neu fuer mich, ich habe frueher mal mit 
ipfwadm und spaeter dann mit FreeBSD Firewalls gebaut. Die Prinzipien sind 
mir einigermassen gelaeufig.

Es gibt nur eine IP-Adresse nach aussen, innen ein
192.168.0.0/16-Netzwerk. Also NAT.

Die Regeln sind in Shellprozeduren verpackt, aber sinngemaess so zu sehen:

iptables --flush
iptables -P FORWARD ACCEPT

allow_service ${service} # Nutzt iptables :
# iptables -A FORWARD -J ACCEPT -m state --state NEW ${service_filter}

iptables -A FORWARD -J ACCEPT -m state --state ESTABLISHED,RELATED

iptables -A FORWARD -J LOG

Letztere Regel soll also alle Verbindungsherstellungen loggen, die ich 
nicht mit allow_service "erschlagen" habe. Je mehr Dienste mir bekannt 
waren und explizite Regeln bekamen, umsoweniger wurde geloggt. Natuerlich, 
innen Windowsen, jede Menge UDP-137-Verbindungsversuche (von innen und von 
aussen)

Okay, nun habe ich das so ausgeduennt, dass ich das Geloggte verbieten 
wollte.

Das gleiche Skript, nur mit der FORWARD-policy DENY, brachte den Verkehr 
nach aussen vollstaendig zum Erliegen, ohne das mein kern.log wesentliche 
Eintraege enthielt:-(

Was ist da falsch?

Nebenbei habe ich jemanden murmeln hoeren, ich muesste etywas mit der
mangle-Tabelle anfangen, ohne dass er es naeher erklaeren konnte. Die
benutze ich bisher gar nicht und sah auch keinen Grund dazu. Hatte der
Murmeler recht?

Fuer Hinweise dankbar waere
Peter

P.S. Wenn es hilft, sende ich auch das Gesamtskript. Es ist allerdings 
ziemlich laenglich, so dass ich hier nur das Prinzip erklaert habe.





Mehr Informationen über die Mailingliste linux-l