I finally came around to give
#BastilleBSD a try on a
#FreeBSD test system but I struggle with the rdr rules. I always get the following error when starting the vnet jail:
stdin:2: syntax error
pfctl: Syntax error in config file: pf rules not loaded
Here my pf.conf
lo_if="lo1"
ext_if="vmx0"
jail_if="vmx0bridge"
#set block-policy return
scrub in on $ext_if all fragment reassemble
set skip on lo
set skip on $jail_if
table <jails> persist
nat on $ext_if from <jails> to any -> ($ext_if:0)
#nat on $ext_if from $jail_if:network to any -> ($ext_if)
#nat on $jail_if from $jail_if:network to any -> ($jail_if)
#nat on $lo_if from $jail_if:network to any -> ($lo_if)
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 on $ext_if inet proto icmp to ($ext_if) icmp-type { unreach, redir, timex, echoreq }
pass in on $ext_if inet proto icmp to ($jail_if) icmp-type { unreach, redir, timex, echoreq }
pass in on $jail_if inet proto icmp to $jail_if:network icmp-type { unreach, redir, timex, echoreq }
My BastilleBSD version is 0.13.20250126