pf

view ssh blacklist

blacklistctl dump -b

Activate pf and pflog

sysrc pf_enable=yes
sysrc pflog_enable=yes
service pf start
service pflog start

View pflog

tcpdump -n -e -ttt -r /var/log/pflog

Most Basic pf.conf

title="/etc/pf.conf"
ext_if="vtnet0"

block in all
pass out all keep state

pass in on $ext_if proto tcp to ($ext_if) port ssh

Reasonable config for VPS with jail support

ext_if="vtnet0"
wg_if="wg0"

set block-policy return
scrub in on $ext_if all fragment reassemble
set skip on lo

table <jails> persist
nat on $ext_if from <jails> to any -> ($ext_if:0)
rdr-anchor "rdr/*"

block in all
pass out quick keep state
antispoof for $ext_if inet
pass in inet proto tcp from any to any port ssh flags S/SA keep state
pass in inet proto tcp from any to any port 443 flags S/SA keep state
pass in quick inet proto icmp all
pass in on $wg_if from any to any
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9