В зависимости от степени упоротости. Если степень велика -- стройте VPN-каналы через интернет "каждый-с-каждым".
Если степень умеренная :-) -- соедините 3 машины между собой VPN-каналами, обозначив их как основные VPN-сервера, а остальные пусть подключаются к двум из трёх этих машин по VPN.
В любом случае, придётся настраивать динамическую маршрутизацию в этих VPN-сетях, через OSPF или iBGP, как будет удобнее. В итоге после отвала любого канала у вас маршрутизация перестроится, и связность останется. Я бы пошёл по второму пути, он проще масштабируется. В первом случае при добавлении нового узла вам придётся руками обходить все остальные узлы и вносить изменения в конфиги.