Это старая версия документа.
Маскарадинг (FreeBSD pf)
собираем ядро с опциями:
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-сеть isp1_if="re0" # внешний ip-адрес сервера #local_net="..." # внутрення локалка #int_ip="..." # внутренний ип в локалке nat on $isp1_if from $int_net_vpn to any -> $isp1_if # собсно NAT pass quick on lo0 all # разрешаем все на lo0 pass quick from $ext_ip to any # Разрешаем траф pass quick from any to $ext_ip # на внешнем ip pass quick from $int_net_vpn to any # разрешаем любой траф pass quick from any to $int_net_vpn # по впн-сети #pass in quick on $int_if from $local_net to $int_ip block in all # все осальное блокируем по умолчанию
Перезапускаем сервер
# reboot