Что , собственно, имеется:
FreeBSD 9 STABLE c пересобранным ядром для PF+AltQ
На ней mpd5 в качестве vpn server, требуется так же форвардинг нескольких портов в локалку.
Просьба указать на ошибки в правилах фаервола, если таковые имеются.
Код: Выделить всё
# cat /etc/pf.conf
int_if="fxp1" # локалка
ext_if_cheap="fxp0" # inet
vpn_lan="172.16.16.96/27"
icmp_types="{ echoreq, unreach}"
priv_nets = "{ 127.0.0.0/8, 192.168.0.0/16, 172.16.0.0/12, 10.0.0.0/8, 169.254.0.0/16, 192.0.2.0/24, 0.0.0.0/8, 240.0.0.0/4 }"
set block-policy drop
set skip on lo0
set skip on $int_if
set timeout { frag 10, tcp.established 3600 }
scrub in all
rdr pass on $ext_if_cheap inet proto tcp from any to port 80 -> 10.0.0.11 port 80
rdr pass on $ext_if_cheap inet proto tcp from any to port 22 -> 10.0.0.11 port 22
nat on $ext_if_cheap from $vpn_lan -> ($ext_if_cheap)
nat on $ext_if_cheap from 10.0.0.11 -> ($ext_if_cheap)
block all
antispoof log quick for { lo0, $ext_if_cheap, $int_if }
block drop in log quick on $ext_if_cheap from $priv_nets to any
pass out on $ext_if_cheap from $ext_if_cheap to any keep state
pass log inet proto icmp all icmp-type $icmp_types
pass inet from $vpn_lan
pass quick on $int_if
