Responder1
Como você indica que não pode alterar o servidor, você deve usar NAT. Isso ocorre porque o servidor precisa saber para onde enviar a resposta e só conhece o próprio cliente VPN, o seu servidor local. Ele não conhece PCs acessíveis através do cliente VPN.
No seu servidor local, você precisa habilitar o NAT na interface OpenVPN. Isso pode ser feito usando um script. Um gancho possível é --route-up
. Lembre-se de mudar --script-security
adequadamente. Os comandos que você precisa executar são iptables -t nat -A POSTROUTING -o $THE_OPENVPN_INTERFACE -j MASQUERADE
. Como o IPTables permite que tudo seja padrão, outras configurações são opcionais. Você provavelmente também deve adicionar um --route-pre-down
script (ou similar) para remover a regra IPTables novamente.
O roteamento pode ser habilitado editando /etc/sysctl.conf
, net.ipv4.ip_forward
precisa ser 1
. echo 1 > /proc/sys/net/ipv4/ip_forward
torna a alteração efetiva imediatamente. sysctl.conf
é para persistência entre reinicializações.
No seu roteador, você precisa configurar uma rota estática para o destino (a rede acessível via VPN) sendo o gateway o seu servidor local (o cliente VPN). Esteja ciente: como você está na mesma rede que o gateway, seu roteador pode enviar redirecionamentos. Talvez você não consiga alterar esse comportamento. Seu sistema operacional deve aceitar redirecionamentos. Mas primeiro experimente sem configuração adicional.
Você pode desejar proteger adequadamente seu servidor local, pois de outra forma um agente mal-intencionado com acesso ao servidor VPN poderia obter acesso à sua rede local.