Você tem várias opções. Uma é usar o mecanismo interno de encaminhamento de porta do ssh. Por exemplo, adicionar -L 1235:remotehost:1234
cria um soquete de escuta TCP local na porta 1235. Quando seu aplicativo local se conecta a essa porta, a conexão será encaminhada (com segurança via ssh) para a porta 1234 no host remoto.
Para criar uma VPN, sugiro usar o openswan ou o libreswan para simplificar a configuração. Veja como é uma configuração:
Com uma VPN, não é necessário ter um "servidor" central, como você sugere. Em vez disso, é apenas um conjunto de túneis criptografados entre sistemas de mesmo nível.
Você também pode configurar uma VPN manualmente com os comandos "ip tunnel" e "ip xfrm" para configurar links ponto-a-ponto entre seus sistemas protegidos por IPsec.