OpenVPN no Google Compute Engine – qual rota estou perdendo?

OpenVPN no Google Compute Engine – qual rota estou perdendo?

Instalei o OpenVPN em outros provedores de VPS e queria experimentar o do Google. Gosto do preço/desempenho do Google, especialmente porque posso ligar as máquinas do meu telefone sem precisar fazer login todas as vezes.

Cheguei ao ponto em que o cliente se conecta, mas não consegue acessar a Internet.

Abri o firewall para a porta OpenVPN.
Habilitei o encaminhamento de IP na máquina virtual.
O cliente obtém um IP, Gateway, DNS - tudo certo - quando conectado.

Suspeito que preciso construir um roteador e/ou uma rota para que os pacotes cheguem da instância do OpenVPN para o mundo. Li a documentação muito bem, mas estou preso - ainda não sou um guru de redes, ainda estou aprendendo à medida que prossigo. Através da leitura parece que posso transformar a rede no que chamam de estrutura “legada”, mas gostaria de poder superar esse desafio e entender o que está acontecendo. Acho que é porque a rede está dividida em muitas sub-redes diferentes; em comparação com apenas uma rede atrás do firewall (ou seja, Legacy).

Olhando para um mapa em minha mente, meu OpenVPN está enviando os dados para o Gateway da sub-rede, mas a partir daí acho que os pacotes são descartados. Devo precisar de uma rota do gateway da sub-rede para a Internet? Ou até mesmo um roteador completo entre sub-rede e internet?

Como eu disse, já usei máquinas virtuais OpenVPN antes, sem problemas. Portanto, estou muito confiante de que o problema está na configuração da rede do Google Cloud.

Obrigado por qualquer dica.

Responder1

Isso corrigiu:

iptables -t nat -I POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE

Ainda não sei por que tive que fazer isso, talvez a imagem Debian do Google seja mais bloqueada do que a instância Diebian padrão.

Nenhuma outra alteração na rede do Google Cloud foi necessária.

Responder2

Você precisa verificar algumas coisas.

  1. Verifique se você tem a seguinte diretiva em /etc/sysctl.conf

    net.ipv4.ip_forward = 1

  2. Certifique-se de que o firewall esteja encaminhando o tráfego recebido dos clientes na interface VPN

    #OpenVPN interface=tun0 iptables -A FORWARD -i tun0 -j ACCEPT

  3. Certifique-se de mascarar o tráfego de saída

#WAN Interface on OpenVPN server is eth1 iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

informação relacionada