Det är vad jag vet väldigt ont om bra Linux-baserade specialicerade router-OS.
OPNSense/pfSense är ju baserade på FreeBSD och kör ju i princip bara på x86 (i gratis-variant).
vyOS har inget GUI. IPFire har inget stöd för IPv6 i stabil version. Vet inte om de funkar på RPi. OpenWrt är bra på kass hårdvara men utnyttjar inte en RPi:s relativt kraftfulla hårdvara speciellt bra, så när man kör OpenWrt på bra hårdvara så får man leva med att det är yxigare än vad det hade behövt vara.
Alla ovan nämnda OS är vad jag vet extremt flexibla, vilket gör att de inte är speciellt lättanvända.
Mer generella distributioner har vad jag vet ingen bra grafisk router-programvara, det är kommandorad och emacs som gäller. Icke-fria varianter som Untangle är i alla fall inte intressant för mig.
Eftersom jag använder OpenWrt så kommer här lite mer detaljer om det:
Det har varit en del kontroverser runt vissa RPi-modeller eftersom Raspberry Pi Foundation inte har velat vara tydliga med licensieringen av Broadcom-firmware. Så under perioder har det inte funnits stöd alls i OpenWrt, sedan har användarna fått kopiera in firmware själva och jag tror det mesta har löst sig nu så att det funkar "ur lådan". En användare som hade ett populärt specialbygge för RPi4, Wulfy23, blev mer eller mindre utkickad på suspekta grunder i samband med den historien.
Här är den generella RPi-sidan på OpenWrt-wikin.
Du vill köra Policy Based Routing om du vill köra vissa enheter över VPN och andra inte. Jag gissar att den lättaste varianten är att köra "pbr app", genom att installera luci-app-pbr. Det är ett paket som du kan installera i LuCI, det grafiska gränssnittet. Och ja, det är grafiskt, och ja det går att installera från den grafiska miljön, man behöver inte installera från kommandorad.
För att få tillgång till grafisk manövrering av Wireguard så installerar du luci-proto-wireguard. Wireguard har ju ingen direkt klient/server-struktur så du kan sätta upp båda ändarna med detta. Wikin visar bara hur man gör via kommandoraden.
OpenVPN kör jag inte, men wikin säger att luci-app-openvpn är den grafiska OpenVPN-klienten.
Om du vill bygga dig en egen image med de ovan nämnda mjukvarorna genom att använda "firmware selector" och expandera "Customize installed packages and/or first boot script" efter att du valt modell och version. Mata in paketnamnen där. Observera att den just nu stabila 23.05 kommer ersättas av en ny stabil 24.10 vilken dag som helst.
Du vill ha en "factory"-image för att skriva till SD-kort. "Sysupgrade" laddar du upp i LuCI när du vill göra en uppgradering till nästa version. Denna sida berättar lite om skillnaderna på ext4 och squashfs (för x86, men det bör i huvudsak vara samma).
Det är rätt troligt att du behöver lista ut vilket kmod-paket (drivrutin/kernel-modul) du behöver installera för den USB-ethernet-dongel som du antagligen måste ha för att RPi:n ska bli en vettig router. Jag är osäker på hurvida eventuell inbyggd WiFi ens går att köra som AP.
Edit: Såg nu att du hade specifikt RPi 5. Om du installerar "snapshot", utvecklingsversion, så får du inte med LuCI som default. Lägg till det i firmware selector (luci) eller installera 24.10-rc-nånting om inte 24.10.0 har kommit.