Linux за българи: Форуми

BSD секция => Настройки на софтуер => Темата е започната от: prilep в Dec 11, 2004, 00:23



Титла: pf and nat
Публикувано от: prilep в Dec 11, 2004, 00:23
Използвам FreeBSD 5.3. Искам да споделя интернета с локалната мрежа използвайки pf.  :(  Проблема е че не се получава. Ето това е conf файла който се зарежда от pf:
# macros
ext_if = "tun0"

# nat
nat pass on $ext_if from rl0:network -> $ext_if

# setup a default policy
pass all

Ще се радвам ако някои ми посочи къде бъркам.
Благодаря

P.S. Така и неуспях да намеря някакъв лог. При стартирането на pflogd получавам следното:

Примерен код
Dec 11 00:08:00 pflogd[90098]: Failed to initialize: BIOCSETIF: pflog0: D
evice not configured
Dec 11 00:08:00 pflogd[90098]: Exiting, init failure


Титла: pf and nat
Публикувано от: NINJ4 в Dec 11, 2004, 12:17
относно логването: погледни в /etc/defaults/rc.conf , секция Network configuration sub-section , firewall_logging= . По подразбиране е NO (при мен).
Дай един изход от ifconfig и .conf-a

намерих и някакъв линк: http://www.allunix.org/_pf_or_....-a.html  , ама не мисля че това ти е проблема


Титла: pf and nat
Публикувано от: n3c в Dec 11, 2004, 17:32
За NAT:
правилото ти трябва да е:

nat pass on $ext_if from <network> to any -> $ext_if

Наличието на думичката "pass" прескача филтрирането на трафика през firewall-a, отсъствието означава, че трафика се филтрира на базата на правилата (rules) по-долу. С твоя списък правила можеш спокойно да я махнеш. <network> се замества с IP-то/тата на межата, която ще е зад NAT-а или с CIDR нотацията му/им (192.168.1.0/24 примерно). NAT правилата много приличат на rules правилата - казваш от къде за къде да се пуска трафика, а след "->" с какъв изходен адрес да е пропуснатия трафик (повече).

За логването:
Само лог файл ли нямаш или изобщо не ти работи pf? Провери с командите:

/etc/rc.d/pf rcvar
и
/etc/rc.d/pflog rcvar

Трябва да получиш отговори съответно:

$pf_enable=YES
$pflog_enable=YES

Ако отговорите са NO, трябва да пуснеш pf и pflog като укажеш начално стартиране в /etc/rc.conf като добавиш редовете:

pf_enable="YES"
pflog_enable="YES"

За повече настройки погледни /etc/defaults/rc.conf и потърси pf_ и pflog параметрите (има обяснения кое за какво е).

Цитат
относно логването: погледни в /etc/defaults/rc.conf , секция Network configuration sub-section , firewall_logging= .


NINJ4: firewall_logging= се отнася за ipfw и няма нищо общо с pf :). Както знаете във FreeBSD има избор между три отделни firewall-а - ipfw/ipfw2, ipf (ipfilter) и pf.

След успешното активиране на pf и pflog трябва да имаш две нови устройства в изхода от командата ifconfig - pflog0 и pfsync0. По подразбиране pflog логва във /var/log/pflog, което може да се промени в /etc/rc.conf (виж /etc/defaults/rc.conf и потърси опцията pflog_logfile=).

Успех!


Титла: pf and nat
Публикувано от: NINJ4 в Dec 11, 2004, 19:23
n3c: така както го казваш изглежда че си прав  :)  опитвах се да помогна само


Титла: pf and nat
Публикувано от: prilep в Dec 12, 2004, 14:05
Благодаря за изчерпателните отговори!
Проблема с лога го оправих като прекомпилирах ядрото с
device          pflog
Преди това ми липсваше следното:
pflog0: flags=141<UP,RUNNING,PROMISC> mtu 33208
Ната също работи вече - там бях забравил pf_enable="YES"
 :)