[BSD] FreeBSD vs PF
Gergely Göndör
bigblock78 at gmail.com
2008. Ápr. 21., H, 15:24:28 CEST
Sziasztok!
Valszeg nagyon láma kérdés, de elakadtam. FreeBSD 7.0 alatt szeretnék
áttérni ipf-ről az OpenBSD féle pfctl használatára, de nem igazán
sikerül. Az RTFM-en már túl vagyok, de nem jutottam előrébb...
Azt szeretném elérni, hogy a nat-olt kapcsolaton kifele menő forgalmat
szűrni tudjam mint korábban is. Mivel minden gépnek saját egyedi
szabályai vannak.
A gondom viszont az, hogy egyszerűen nem sikerül ezeket alkalmazni.
Itt egy rövid példa:
ext_if="ng0"
int_if="fxp0"
int_net="192.168.1.0/24"
scrub in all fragment reassemble
nat on $ext_if from $int_net to any -> ($ext_if)
block on $ext_if all
pass out on $ext_if from !192.168.1.0/24 to any
A gond az, hogy a block rule megfog mindent, és nem megy tovább. Pedig
azt olvastam a manualban, ha nincs quick beállítva, akkor tovább lép a
következő szabályra mivel az utolsó nyer. Nos, ezt nem teszi.
Ha így alakítom:
pass out quick on $ext_if from !192.168.1.0/24 to any
block on $ext_if all
Akkor meg az a gond, hogy az összes gép el tud érni rajta keresztül
bármit, pedig elméletileg itt csak a routernek (BSD) lenne szabad.
Ami még gondom, hogy hiába készítek ruleokat egyenként a gépeknek,
azokon is átlép.
pass out quick on $ext_if from 192.168.1.1 to any
Ezt hiába adom meg, nem foglalkozik vele. Olyan, mintha az ext_if-en már
a natolás után vizsgálná a csomagokat, tehát igazán nem tud vele mit
kezdeni.
Azért nem értem ezt, mert ezek a szabályok teljesen jól működtek és
működnek is az ipf-ben (is). A NET-en amiket találtam beállításokat ott
is mindenhol így állították be nagyjából, de nekem így vagy mindent
enged, vagy semmit (beleértve magát a szervert is).
A kérdésem az lenne, hogy mit csinálok rosszul ?
Előre is köszi!
Üdv,
Gergő
További információk a(z) BSD levelezőlistáról