Сопутствующие вопросы:
1) какой трафик у вас в сети ходит и в каком количестве? Мультикаст (например iptv)? Бродкаст (могут генерить различные устройства умного дома)? Это все может существенно загрузить вашу и без того, не особо мощную железку)
2) Что подразумевается под сетевым экраном? Резать трафик по iptables? Сколько правил планируется использовать? Использовать что-то посерьёзнее типо ips/ids?
3) какой канал наружу?
4) сколько одновременных подключений по впн? Он будет использоваться только для подключения к домашней сети или соединять несколько объектов?
Пока не узнаем - не поймём. На вашем месте я бы купил Mikrotik Hap AC2 и не стал бы заморачиваться. В нем почти все, что вы описали есть изкоробки. Чего нет - всегда можете дописать скриптом. Да, на Linux вы можете реализовать все это, но потратите время куда больше. Лучше покопаться в хорошо задокументированной железке и получить кайф от настройки динамической маршрутизации, чем сидеть и курить лог сервиса linux в надеждах понять "почему же он работает не так как вы от него хотите" а по итогу понять, что поставили лишний пробел в конфиге.
И последнее: в микротике есть свитч чип который при правильной настройке снимает нагрузку с центрального процессора во время коммутации. А в вашем случае весь трафик будет молотить процессор.