FreeBSD od "skora" poseduje jedan mocan alat koji se zove Packet Filter (PF), prvenstveno razvijan za OpenBSD, kasnije portovan i na FreeBSD.
Pomocu njega cemo podesiti NAT i Firewall.
Potrebno je da imate instaliran FreeBSD 6.x sa dve mrežne kartice naravno. U mom slucaju to su Realtek-ova rl0 i 3Com-ova xl0. Jedna je povezana sa SBB-ovim modemom, druga povezuje klijentski XP racunar na kome ja radim.
Prvo sledi podešavanje mrežnih kartica. U fajl /etc/rc.conf ubacite sledece:
gateway_enable="YES"
ifconfig_xl0="DHCP"
ifconfig_rl0="inet 192.168.0.1 netmask 255.255.255.0"
pf_enable="YES"
ifconfig_xl0="DHCP"
ifconfig_rl0="inet 192.168.0.1 netmask 255.255.255.0"
pf_enable="YES"
Prva linija ukljucuje forwarding paketa što omogucava FreeBSD-u da radi kao ruter. Drva linija konfiguriše 3Com-ovu karticu preko DHCP. Treca linija konfiguriše Realtek-ovu sa ip-om 192.168.0.1. Cetvrta linija dodaje PF u "startup" tako da se on pokrece pri svakom butovanju sistema itd. Nakon ovog koraka restartujte racunar kako bi se ucitala nova podešavanja.
Nakon toga sledi definisanje pravila u /etc/pf.conf fajl:
ext_if="xl0"
int_if="rl0"
scrub in all
set skip on lo0
nat on $ext_if from 192.168.0.0/24 to any -> ($ext_if)
pass in all
pass out all
int_if="rl0"
scrub in all
set skip on lo0
nat on $ext_if from 192.168.0.0/24 to any -> ($ext_if)
pass in all
pass out all
Sada proveravamo ispravnost conf fajla pomocu:
# pfctl -nf /etc/pf.conf
Ako sve prode kako treba, potrebno je ukljuciti Packet Filter:
# pfctl -e
To je to! Imamo funkcionalan NAT sa firewall-om koji doduše pušta sve pakete koji dolaze spolja ali o tome drugom prilikom :)
NAPOMENA: Moguce je da ce setup varirati u zavisnosti od mrežnih kartica koje imate.
Intel EtherExpress PRO kartice koriste drajver: fxp
nVidia nForce integrisane kartice koriste drajver: nve
AMD PCI kartice koriste drajver: pcn
Detaljnije o ovome možete pogledati u GENERIC conf fajlu na vašem FreeBSD sistemu.
Na samom kraju sledi podešavanje klijent racunara.
mod: update posta
[Ovu poruku je menjao MMX dana 18.08.2007. u 17:45 GMT+1]