Я пытаюсь создать простой файл pf.conf, который включает NAT, позволяющий трафику выходить из сети со всех систем на выбранной серии портов. В моей базовой конфигурации у меня есть внутренний сервер, на котором размещены HTTP / HTTPS, которые будут доступны извне через IP-адрес с NAT. Изнутри я хотел бы, чтобы клиенты выходили из сети только по DNS / HTTP / HTTPS.
int_if="eth0"
ext_if="eth1"
localnet=$int_if:network
nat on $ext_if from $localnet to any -> ($ext_if)
comp1="172.16.0.1"
rdr on $ext_if proto tcp from any -> $comp1 port http
rdr on $ext_if proto tcp from any -> $comp1 port https
client_out_tcp = "{ http, https}"
client_out_udp = "{ 53 }"
pass inet proto tcp from $localnet to port $client_out_tcp
pass inet proto tcp from $localnet to port $client_out_udp
В этой конфигурации мой сервер подключен к соответствующим портам, как я спроектировал, однако мои клиенты всегда могут покинуть сеть, несмотря ни на что.