Szia,

Ha megengeded belejavitok a szabalyokba.
Nem akarom megmondani hogyan csinald,
csak megprobalom pontositani a dolgokat.
az atrendezest csak azert tettem, mert igy szamomra
atlathatobb.. remelem nem gond :))

akkor vegyuk sorra:

-A INPUT -i lo -j ACCEPT
-A INPUT -j rossz_csomagok

-A INPUT -i ppp0 -p tcp -m tcp --tcp-flags SYN SYN -j syn_flood
-A INPUT -i ppp0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i ppp0 -p icmp -j icmp_csomagok
az icmp vizsgalatot javallott a lanc elejere helyezni

-A INPUT -i ppp0 -p tcp -m tcp -j tcp_bejovo_csomagok
-A INPUT -i ppp0 -p udp -m udp -j udp_bejovo_csomagok

-A INPUT -i eth1 -s 192.168.15.0/255.255.255.0 -j ACCEPT
-A INPUT -i eth1 -p udp -m udp --sport 68 --dport 67 -j ACCEPT
a fenti ket sor majdnem ua-t jelenti, akkor van ertelme a masodiknak
ha az eth1-rol johetnek mas ipcimrol kapcs. keresek mint:192.168.15.0/24.
ha nem, nincs szukseg a masodik sorra, mert ha a masodik sorba
odagondoltad a -s 192.168.15.0/255.255.255.0 akkor az elso
sor bovebb.
-A INPUT -s 192.168.15.255 -i eth1 -j ACCEPT
a sort a fenti elso sor is tartalmazza


-A INPUT -p tcp -m tcp -m limit --limit 1/min -j LOG 
--log-prefix "input tcp drop"
-A INPUT -p tcp -m tcp -m limit --limit 1/min -j DROP
-A INPUT -m limit --limit 3/min --limit-burst 3 -j LOG 
--log-prefix "input drop"
a log utan ajanlott prefixet raknod, hogy konnyebben megtalald
a logolt reszt a szabalyrendszerben.
a DROP-os sor ezt jelenti:
dobj el minden elso default (most nem emlekszek mennyi) csonagot,
utanna minden percben 1-et, raadasul csak a tcp-k eseten.
ha figyelembevesszuk, hogy a default policy DROP es ezutan mar az jon,
akkor nem sok ertelme van, ezt nem tudhatom. en torolnem.
Ha a sebessegszabalyozas miatt tetted be, azt nem igy kell csinalni,
de a logikajat eltalatad :)
azert szokas a log-ba limitet rakni, hogy a log fileok nem
nojenek tul nagyra,es a log particio nehogy megtelljen, habar az
utobbit a logrotate-al lehet szabalyozni.

nem raktal az eth1-rol jovo mar aktiv kapcsolatnak szabalyt:
-A INPUT -i eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
ezeket a lanc (majdnem) elejere szokas rakni altalaban,mondjuk
a kotelezoen DROP,es csomagallapotot ellenorzo szabalyok utan...

egy sajat lanc vegere nem szukseges a RETURN, mert ott az a default.

-A OUTPUT -s 192.168.15.1 -j ACCEPT  !!!!!!
-A OUTPUT -o eth1 -j ACCEPT
-A OUTPUT -o ppp0 -j ACCEPT
itt a linux eth1 ip cime 192.168.15.1?, meg persze
van meg egy mondjuk eth2 interfaced? ha igen akkor jo:)
kulonben nem sok ertelme az alatta levo szabaly alapjan.
talan ez akartad irni ?

-A OUTPUT -s 192.168.15.1 -d 192.168.15/24 -o eth1 -j ACCEPT
-A OUTPUT -s 192.168.15.1                  -o ppp0 -j ACCEPT
ha igen ez pontosabb.

apropo van mas interfaced mint eth0 eth1 es ppp0 ?
es a ppp0 az fizikai eth0-t hasznalja ?
es a linux belso laba az eth1?

-A FORWARD -i ppp0 -m state --state RELATED,ESTABLISHED -j ACCEPT

-A FORWARD -i eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
ezt itt is kihagytad..igazabol itt elhagynan a -i feltetlet es a
ppp0-s stateful sort.

-A FORWARD -i eth1 -p tcp -m tcp -j tcp_kimeno_csomagok
-A FORWARD -i eth1 -p udp -m udp -j udp_kimeno_csomagok
-A FORWARD -i eth1 -j ACCEPT
a fenti sorokba betennem a -o interface-t is, gondolom -o ppp0
lehet amit be kene tenni.

-A FORWARD -i ppp0 -p tcp -m tcp -d 192.168.15.0/255.255.255.0 -m
multiport --dports 8000,8010 -j ACCEPT
itt a resz ami nem jo a feladatkiiras szerint, persze ha jol ertettem.
ezt irnam helyette:
-A FORWARD -i eth1 -p tcp -m tcp -s 192.168.15.0/255.255.255.0 
  -d kulso_szerver_fix_IP -m multiport --dports 8000,8010 -o ppp0 -j ACCEPT

-A POSTROUTING -o ppp0 -j SNAT --to-source sajat.fix.ip.cimem
-A POSTROUTING -s 192.168.15.0/255.255.255.0 -j SNAT --to-source
sajat.fix.ip.cimem
miert vetted kulon a ket szabalyt?,
igy a -o ppp0 es a -s 192.168.15.0/255.255.255.0 szabaly
kozott vagy kapcsolat van raadasul pl a valasz csomagokat vagy a
linux altal a belso haloba kuldott csomagokat is natolod huuuhhh
A PREROUTING es a POSTROUTING mindig vegrhajtodik iranytol fuggetlenul.
a helyedben a 
-A POSTROUTING -s 192.168.15.0/255.255.255.0 -o ppp0 -j MASQUERADE
szabalyt hasznalnam. Van egy resz a tutorialban ami leirja a
MASQ es az SNAT kozotti kulonmbsegeket.

-A POSTROUTING -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
ezt kihagynam, nem sok ertele van, raadasul itt a policy az ACCEPT,
megasztan a stateful-t mar vizsgaltad korabban.

Az INVALID csomagokkat nem dobnam el, hacsak nem olyan kernelt hasznalsz,
ami mar jol kezeli, mert furcsa lassulasokat tapasztalhatsz.
de ezt nalam okosabbak biztosan ellenzik majd. :)

megint jo hosszu lett.....
ha elirtam valamit ezer bocs

sok sikert..
zoli



_________________________________________________
linux lista      -      linux@mlf.linux.rulez.org
http://mlf2.linux.rulez.org/mailman/listinfo/linux

válasz