34 lines
860 B
Plaintext
34 lines
860 B
Plaintext
|
ext_if = "{ igb0 igb1 ix0 ix1 wlan0 }"
|
||
|
|
||
|
dhcp = "{ bootpc, bootps }"
|
||
|
# allow = "{ }"
|
||
|
|
||
|
tcp_pass_in = "{ 22 }"
|
||
|
udp_pass_in = "{ 53 51820 }"
|
||
|
|
||
|
# Rules must be in order: options, normalization, queueing, translation, filtering
|
||
|
|
||
|
# options
|
||
|
set skip on lo
|
||
|
|
||
|
# redirections
|
||
|
|
||
|
# filtering
|
||
|
block log all
|
||
|
pass out on $ext_if
|
||
|
|
||
|
# We pass on the interfaces listed in allow rather than skipping on
|
||
|
# them because changes to pass rules will update when running a
|
||
|
# `service pf reload` but interfaces that we `skip` will not update (I
|
||
|
# forget if its from adding, removing, or both. TODO: test to figure
|
||
|
# it out)
|
||
|
# pass quick on $allow
|
||
|
|
||
|
pass on $ext_if proto icmp all
|
||
|
pass on $ext_if proto icmp6 all
|
||
|
|
||
|
pass in on $ext_if proto tcp to any port $tcp_pass_in
|
||
|
pass in on $ext_if proto udp to any port $udp_pass_in
|
||
|
|
||
|
pass quick on $ext_if proto udp from any port $dhcp to any port $dhcp
|