Прошу помощи в настройке PF.
В небольшом филиальском офисе есть маленький сервер на Freebsd 9.3, понадобилось поднять на нем VPN, настроил на MPD5, всё замечательно работало до тех пор пока не добавил PF. В итоге имеем:
Маршрутизатор на котором проброшен порт 1723, сервер с одним сетевым интерфейсом 192.168.3.200. С включенным PF-ом подключение по VPN происходит, но никакие внутренние ресурсы не доступны, выключаем PF и всё отлично работает.
pf.conf
Код: Выделить всё
net_if="xl0"
#Макросы
tcp_services="{ssh, 53, 137, 139, 445}"
udp_services="{53, 137, 138, 445}"
ftp_ports="{ftp, ftp-data}"
#Политики
#Не слушаем loopback интерфейс
set skip on lo0
#Нормализация трафика
scrub in all
#Антиспуфинг
antispoof quick for $net_if
#Блокируем все входящие подключения
block in all
#Разрешаем всё исходящее
pass out on $net_if from any to any keep state
#Разрешаем входящие
pass in quick on $net_if inet proto tcp from any to any port $tcp_services keep state
pass in quick on $net_if inet proto udp from any to any port $udp_services keep state
# FTP
pass quick inet proto {tcp, udp} from any to any port $ftp_ports keep state
pass quick inet proto {tcp, udp} from any to any port > 18000 keep state
# Разрешить GRE-протокол для тунелированных соединений
pass quick inet proto gre to any keep state
# VPN
pass in on $net_if inet proto tcp from any to $net_if port 1723
pass inet proto {tcp, udp, icmp} from 192.168.3.0/24 to 192.168.3.0/24 keep state
# PING
pass in on $net_if inet proto icmp from any to any
#Блокируем IPv6
block drop inet6 all