Freebsd

FreeBSD pf 出口過濾

  • January 7, 2014

我正在嘗試建構一個簡單的 pf.conf,其中包括 NAT,允許來自選定埠系列上的所有系統的網路流量。在我的基本配置中,我有一個託管 HTTP/HTTPS 的內部伺服器,可以通過 NATed IP 從外部訪問。從內部來看,我只希望客戶端在 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

使用這種配置,我的伺服器會在我設計的正確埠上聯繫,但是無論如何我的客戶總是可以離開網路。

這是因為預設情況下,您不會在 localnet 上阻止傳出流量。

嘗試使用這些方面的東西:

block out from $localnet to any
pass inet proto tcp from $localnet to port $client_out_tcp
pass inet proto tcp from $localnet to port $client_out_udp

引用自:https://serverfault.com/questions/564707