Hi,
I've been working for some time on a project to manage my router@home,
I'm sharing it here in the hope that it will be useful to someone else.
Here it is: https://github.com/yannh/openbsd_immutable_router
It contains a set of configuration scripts for Packer and Ansible that
make it easy to generate a disk image, that you can then copy to a USB
stick to boot from.
To minimize writes to the USB stick, the root partition is mounted
read-only, and all folders that require writes are mounted as MFS.
There is also some pf/dyndns/pppoe configuration that I left for
learning purposes.
This workflow allows me to regenerate an image, or do a system upgrade,
in about 20 minutes - packer build -var-file=config.json openbsd.json,
dd if=output-qemu/openbsd of=/dev/sdb, reboot. I procrastinate less when
doing my upgrades now :)
Regards,
Yann