Tenho um problema específico em que um software só pode ser executado no Linux, mas deve se conectar a um servidor remoto por meio de um cliente VPN que só pode ser executado no Windows.
Com hardware físico, presumo que eu poderia simplesmente instalar um cabo Ethernet entre a caixa do Linux e a caixa do Windows, e um segundo da caixa do Windows até o roteador. (Não faço ideia se isso funcionaria, mas parece que deveria).
Como eu poderia fazer isso em um hipervisor VMWare ESXi usando duas máquinas virtuais?
Encontrei alguns artigos que podem me ajudar, mas gostaria de um pouco de conhecimento sobre o assunto.
https://www.privateinternetaccess.com/forum/discussion/1389/pia-tunnel-a-virtual-machine-vpn-tunnel
https://www.privateinternetaccess.com/forum/discussion/21459/pia-and-vmware-worsktation
https://protechgurus.com/configure-lan-routing-windows-server-2016/
- https://redmondmag.com/articles/2015/04/23/windows-server-as-a-network-router.aspx
Responder1
Por mais que eu concorde que esta é uma má ideia, você parece convencido de que é a melhor solução para as suas circunstâncias. Pessoalmente, eu coletaria todos os vários clientes VPN. Com isso dito...
Primeiramente você precisa habilitar o roteamento e o acesso remoto na máquina Windows que está executando o cliente VPN. O link 'configurar lan rounting' que você possui deve levá-lo a esse ponto.
Então você precisa configurar uma rota que direcionará o tráfego para suas redes/hosts VPN através da interface pretendida (o adaptador VPN). Se você não sabe qual tráfego, você pode usar uma rota padrão que encaminhará todo o tráfego. Depois de configurar isso na sua caixa do Windows, você precisará definir o endereço do gateway padrão na caixa do Linux para ser o endereço IP do adaptador LAN na caixa do Windows.
Embora você possa configurar o roteamento no Windows usando a linha de comando, pode ser um pouco mais fácil começar se você usar uma ferramenta GUI como o Nirsoft NetRouteView:
https://www.nirsoft.net/utils/network_route_view.html
Certifique-se de executar isso como administrador, caso contrário você terá dores de cabeça;) Isso permitirá que você visualize/edite/exclua rotas existentes e crie novas. Para sua informação, se você tiver mais de uma rota padrão (0.0.0.0), a rota com a métrica mais baixa é a rota que tem prioridade. Portanto, talvez você precise ajustar as métricas de suas rotas de acordo.
Se esta for uma configuração usada com frequência/permanente, você pode deixar a caixa do Linux configurada como está e adicionar rotas adicionais na caixa do Windows para lidar com o tráfego para vários túneis VPN. Quando você torna suas rotas "persistentes", elas serão salvas por meio de uma reinicialização. As rotas que não são persistentes são perdidas quando a máquina é reinicializada. Você também pode especificar o adaptador (interface) para as rotas ao configurá-las. Por exemplo, você pode configurar rotas para VPN-A e VPN-B e quando a VPN-A estiver conectada e a VPN-B não, a rota para VPN-B será essencialmente ignorada e o tráfego será roteado através da VPN-A.
Responder2
A situação encontrada pelo autor da postagem é a necessidade de se conectar a vários clientes seus usando VPN. Ele recebe o software VPN dos clientes, software quase sempre destinado ao uso no Windows. Infelizmente, seu programa foi escrito e roda em Linux.
A solução solicitada pelo autor da postagem é usar uma VM do Windows para atuar como roteador para a VPN, executando assim o cliente VPN no Windows e conectando-se a ele a partir do host Linux.
Esta solução não funcionará em todos os casos, pois muitas empresas têm o mau hábito de tornar a sua VPN obrigatória, para que a VM ligada fique isolada da rede anfitriã e não consiga encaminhar pedidos. (Felizmente, nenhum firewall pode desconectar a área de trabalho da VM do VMWare em execução no host.)
Uma solução possível é usar um cliente Linux para VPN. A maioria dos clientes VPN para Linux são gratuitos, mas mesmo que não sejam, o cliente pagou pelo produto e pode obter o cliente Linux se você realmente insistir. Esta é de longe a solução mais simples.
Uma segunda solução é inverter a arquitetura. Sugiro adquirir um computador Windows e instalar nele os vários clientes VPN. O programa Linux pode então ser instalado em uma VM Linux que usará a rede do host. Esta solução funcionará mesmo para uma VPN obrigatória.
Uma terceira solução depende do fato de que os hipervisores modernos agora suportam hipervisores incorporados, que são hipervisores executados em uma máquina virtual. Essa arquitetura é um pouco rebuscada, envolvendo seu Linux hospedando uma VM Windows com seu hipervisor incorporado executando uma VM Linux incorporada contendo seu produto. Esta solução também funcionará mesmo para uma VPN obrigatória, mas você terá que pesar suas vantagens e desvantagens. Isso pode forçá-lo a usar outro produto VMWare diferente daquele que você está usando atualmente. Admito não saber se esta solução é realmente viável.