In the past I used pfSense, and I liked it. But I was bitten by the infra-as-code bug, and so far I have not found anything like pfSense, but which can be automated well. I've seen people use OpenWrt ...