Pf.conf kérdés.

Fórumok

Üdv mindenkinek.

Kérdésem a következő.
Van egy Freebsd-s rendszer amit Routernek használok, ráadásul ez a Firewall is.
Pf.conf-ban az alábbi gondom lenne.
Nem tudom egyszerűen megoldani, hogy a alá bedugott gépek közül 1 db-on (192.168.1.105) csak és kizárólag egy portforward legyen.

Ez így néz ki:
rdr pass on $ext_if inet proto tcp from any to $ext_ip port {1023} -> 192.168.1.105

Viszont nem szeretném kiengedni ezen kívül az internetre...
Próbáltam már több verziót is amit az interneten találtam de semmi... egyszerűen simán tudok böngészni rajta.

Mit írjak be, hogy azon a bizonyos gépen csak a portforwardal kommunikáljon és semmilyen más kapcsolat se ki se be...

Köszönöm előre is.

Hozzászólások

NAT-ot ki kéne kapcsolni erre az IP-re.

NAT-ot valami hasonló legyen:
match out on egress inet from { 192.168.1.0/24 !192.168.1.105} to any nat-to (egress:0)

ez openbsd de azt hiszem freebsd is megeszi, ha nem akkor is a logikát látod.

Sajnos a FreeBSD PF-je verziókkal van lemaradva az OpenBSD-ben lévőtől. Így ezt a sort biztosan nem érti meg.

Remélem nem csapok be senkit, ha azt írom, hogy a FreeBSD-ben lévő PF az OpenBSD 4.5-ben megjelent kódra épül, azt fejlesztgetik a FreeBSD céljainak megfelelően (leginkább teljesítmény és skálázódás terén).

Szia,

Bocsi, de nem ertem. Portforwardrol beszel eloszor, utanna meg nem akarod kiengedni a gepet a netre. Szamomra nem egeszen vilagos mit is szeretnel. Mit jelent az hogy portforwarddal komunikaljon?

Ha tisztazzuk mit is szeretnel, akkor tudok segiteni.

Udv.,
Peter

Ez a gép egy olyan programot futtat amit el kell érni, távolról.
Emiatt egy másik routerben PortForward van felvéve, hogy ha X portról jön egy csomag az mennyen át erre a gépre.
De ezen az egy porton kívül minden más portot szeretnék letiltani, pontosabban ne lehessen rajta, pl. FTP, HTTP, HTTPS, SSH, semmi... a tüzfal kizárólag azt az egy 1023-as portot engedje ki és be a gépen semmi mást.
Ha ez a pc ( 192.168.1.105) bármilyen kommunikációt indít (pl. egy User, Vírus, bármi) akkor ne működjön...

Csak a tisztánlátás érdekében: olyan IT fogalom, hogy "portforwardal kommunikáljon" nincs, ettől biztos minden tűzfalakkal foglalkozót kivert a víz. :-)
Esetleg "csak arra a forgalomra válaszolhasson, ami a továbbított porton keresztül érkezik".

Szóval annyi kell csinálnod, hogy az adott gép minden internet felé irányuló forgalmát tiltanod kell, kivéve az ominózus protokoll/port párost.

Én valami ilyesmit próbálnék meg:


service_pc="192.168.1.105"
service_ports="{1023}"
rdr on $ext_if proto tcp from any to ($ext_if) port $service_ports -> $service_pc
pass in quick on $ext_if proto tcp from any to $service_pc port $service_ports keep state
pass out quick on $ext_if proto tcp from $service_pc port $service_port to any
block drop on $int_if proto tcp from $service_pc to !$int_if:network

Remélem nem írtam el sehol. De kiindulásnak úgy is jó lesz.

block drop out quick on $ext_if from 192.168.1.105 to any

Okay, orulok neki.
Azert javaslom, hogy nezd at hogy is mukodik a pf. Ahogy atneztem a bemasolt pf.conf tartalmat, lenne mit javitani rajta.
Illetve, ilyen esetben az adott szerveren erdemes a tuzfalat beallitani a kivanalmaknak megfeleloen. Pl. ha a "kulso" tuzfalon levo konfigba beirod, hogy mi a szerver IP cime, megoldod a tiltast. De valami miatt megvaltozik az IP cim (T Elek megvaltoztatja) es mar meg is tortent a nem kivant esemeny.

Udv.,
Peter