FreeBSD pf出口过滤

我正在尝试构build一个简单的pf.conf,其中包括NAT,允许从选定的一系列端口上的所有系统中将stream量从networking中排除出去。 在我的基本configuration中,我有一个内部服务器,托pipeHTTP / HTTPS,可以通过NATed IP从外部访问。 从内部来看,我只想让客户通过DNS / HTTP / HTTPS离开networking。

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 

有了这个configuration,我的服务器在我devise的正确的端口上联系,但是我的客户端总是可以离开networking。

这是因为您在本地网上默认不阻止传出stream量。

尝试使用以下内容:

 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