Sim, isso pode ser feito graças ao fato de você estar executando o seu servidor da Web em uma VM . O primeiro fato (de que você está usando o Linux) é um pré-requisito absoluto, o segundo (que é uma VM, não uma máquina física) torna isso mais fácil e menos dispendioso.
Quando você configura uma VPN, ela altera sua tabela de roteamento, estabelecendo (no seu caso) que todo o tráfego deve passar por um servidor diferente. Se uma conexão entrar pelo seu roteador local, a VM Mint tentará responder seguindo as instruções de roteamento da única tabela que ela conhece, isto é, através da VPN. No entanto, o PC que tentar entrar em contato com seu servidor da Web verá que sua consulta ao seu endereço não VPN foi respondida por um servidor VPN distinto, de terceiros. Por razões óbvias de segurança, essas respostas são descartadas imediatamente.
Para resolver esse problema, o Linux tem a capacidade de manipular duas (ou mais) tabelas de roteamento distintas, com regras especificando quando cada uma deve ser usada. Então, o que você quer fazer é criar uma segunda interface na sua VM Mint (vamos chamá-la de eth1), e ter certeza de que ela tem um endereço IP na sua LAN (se você estiver usando o VirtualBox, significa criar uma interface bridged .
Agora, tudo o que você precisa fazer é configurar duas tabelas de roteamento, de modo que, se uma comunicação chegar através do OpenVPN, ela seja respondida pela tabela de roteamento configurada pelo OpenVPN, mas se ela entrar pelo LAN (a NIC que chamamos de eth1 ) é respondida por uma tabela de roteamento diferente que roteia o tráfego de onde veio, ou seja, seu roteador local, não o servidor OpenVPN.
Você faz isso da seguinte maneira:
antes de iniciar a VPN, crie duas tabelas: vamos chamá-las de main (aquela destinada a ser usada pelo OpenVPN) e NONVPN:
echo 200 main >> /etc/iproute2/rt_tables
echo 201 NONVPN >> /etc/iproute2/rt_tables
Adicione um gateway a cada tabela de roteamento (se necessário):
ip route add 192.168.1.0/24 dev eth0 src <SRC1> table main
ip route add 192.168.1.0/24 dev eth1 src <SRC2> table NONVPN
Em seguida, uma rota padrão:
ip route add default via 192.168.1.1 table main
ip route add default via 192.168.1.1 table NONVPN
onde assumi 192.168.1.1 é o seu roteador local e 192.168.1.0/24 a LAN.
Agora você pode iniciar sua VPN: ela modificará sua tabela de roteamento principal.
Por fim, você define as regras para selecionar a tabela de rotas com base no endereço de origem:
ip rule add from 10.0.0.0/24 table main
ip rule add from 192.168.1.0/24 table NONVPN
onde assumi que seu túnel OpenVPN tem endereços no intervalo 10.0.0.0/24, modifique de acordo.
Você terminou.