[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[Debian]:Re: [ISDN] Firewallregeln , SYN ACK FIN



Stefan Nobis <stefan@snobis.de> writes:

> Was ist das Ziel der Übung? Nun, eine neue Verbindung soll nur von
> meinem Rechner aus durch komplett neue Anfragen geöffnet werden können
> (nicht durch alte, noch offene Verbindungen). Dabei ist das SYN-Bit
> gesetzt und mit ipchains sieht das so aus:

[gute Lösung gesnippt]

Ich habe das Ganze ein wenig radikaler gelöst. Ich würge alles ab, was
keinen lokalen Absender hat, also auch und vor allem die Pakete der
vorherigen Onlinesession.

Bei einer Potato Installation mit ISDN sieht das so aus:

/etc/isdn/device.ippp0:

[...]
LOCALIP=192.168.1.2
REMOTEIP=192.168.9.9
(remote IP wird auf einen Dummyeintrag außerhalb des eigenen Netzes 
gesetzt)

[...]

ipchains -N dynout
ipchains -A dynout -j RETURN -s ${LOCALIP}/32 -i ${device}
ipchains -A dynout -j DENY -s 0/0 -d 0/0
ipchains -I output 1 -j dynout -i ${device}

(Beim Start wird obiger Regelsatz gesetzt. Jedes über ippp0 zu sendende 
Paket wird durch die Regel dynout geschleust und da kommen nur Pakete mit 
bestimmten Adressen durch - im Offlinezustand, nur was vom lokalen Rechner 
kommt (192.168.1.2). Der Rest läuft in ein Deny.)


[...]
ipchains -D output 1
ipchains -F dynout
ipchains -X dynout

(Hiermit wird im "stop)" -branch von device.ippp0 alles wieder 
zurückgesetzt, also die Regelsätze wieder gelöscht.
Wenn man isdnutils stoppt, fliegt damit alles wieder raus.)



/etc/ppp/ip-up.d/00-isdnutils:

[...]
ipchains -R dynout 1 -j RETURN -s "${PPP_LOCAL}/32" -i $PPP_IFACE

# The next lines are for firewalling.
# See comments in /etc/isdn/device.* about firewalling!
[...]

Die obige Zeile schreibt den Filter auf die jeweils zugewiesene dynamische 
IP um, so daß im Onlinezustand die Pakete durchkönnen.


/etc/ppp/ip-down.d/99-isdnutils:

[...]
case "$PPP_IFACE" in
        ippp0)  route del default

                #------------inserted for dialprotection---------------
                # we put ippp0 back to initial state:
                ifconfig $PPP_IFACE down
                ifconfig $PPP_IFACE 192.168.1.2 pointopoint 192.168.9.9
                ifconfig $PPP_IFACE up
                #------------------------------------------------------

                route add default netmask 0 $PPP_IFACE  # usually necessary

                # interted for dialprotection:
                ipchains -R dynout 1 -j RETURN -s 192.168.1.2 -i $PPP_IFACE

                # The next lines are for firewalling.
                # See comments in /etc/isdn/device.* about firewalling!
[...]

Das Interface wird nicht auf der letzten zugewiesenen IP belassen, wie sonst, 
sondern explizit auf die ursprüngliche IP zurückgesetzt, damit der 
Filter einen definierten Ansatzpunkt hat.
Dann wird die Filterregel wieder auf den Ursprung zurückgesetzt und es 
kommen nur noch Pakete von localhost durch (können also die Leitung 
triggern), wobei localhost hier halt 192.168.1.2.
Evtle. FinWaits, usw.  aus der Onlinesession vorher, besitzen dagegen
noch die Absenderadresse die während der Session vorher bestand und
werden nun nicht mehr durchgelassen. Irgendwann laufen sie in einen
Timeout und verschwinden. Die Leitung triggern sie nicht mehr.

Sorry, ich habe das hier nur schnell zusammen ge-cut'n'pasted (whow,
kranke Wortschöpfung), aber das Prinzip sollte verständlich sein und
auch die sinnvolle Einordnung in die vorhandene Debianstruktur.

hth,

marcus


-- 
"[...]>Das ist aber nicht, was ich gefragt habe.                   
      Ja, die Frage geht an den Symptomen vorbei. Bist Du MCSE?[...]"
                          (Michal Keukert und Uwe Borchert in danam)
eMail: bofh@bogomips.de
------------------------------------------------
Um sich aus der Liste auszutragen schicken Sie
bitte eine E-Mail an majordomo@jfl.de die im Body
"unsubscribe debian-user-de <deine emailadresse>"
enthaelt.
Bei Problemen bitte eine Mail an: Jan.Otto@jfl.de
------------------------------------------------
Anzahl der eingetragenen Mitglieder:     738


Reply to: