Собираем ядро с опциями:
device pf #PF OpenBSD packet-filter firewall device pflog #logging support interface for PF device pfsync #synchronization interface for PF
Автозагрузка /etc/rc.conf добавляем
pf_enable="YES" pf_rules="/etc/pf.rules" pf_flags="" pflog_enable="YES" pflog_logfile="/var/log/pflog" pflog_flags=""
Файл настроек pf.rules:
isp1_if="re0" # внешний ip-адрес сервера int_if="em0" # интерфейс смотрящий в локалку int_net_vpn="10.0.0.0/16" # внутренняя VPN-сеть nat on $isp1_if from $int_net_vpn to any -> $isp1_if # собсно NAT pass quick on lo0 all # разрешаем все на lo0 pass quick from $int_net_vpn to any # разрешаем любой траф pass quick from any to $int_net_vpn # по впн-сети block in all # все остальное блокируем по умолчанию
Перезапускаем сервер
reboot