O que você precisa é de roteamento da política de origem para rotear as respostas para as conexões de entrada do gateway EC2 em vez da VPN . Supondo que o IP interno da sua instância é 1.0.0.20 com o gateway padrão em 1.0.0.1, e o IP da VPN é 10.8.0.20:
-
Crie tabelas de roteamento nomeadas (só precisa ser feito uma vez)
echo 10 ec2 >> /etc/iproute2/rt_tables echo 11 vpn >> /etc/iproute2/rt_tables
-
Configure as novas tabelas de roteamento com uma rota padrão sobre seus respectivos gateways
ip route add 1.0.0.0/24 dev eth0 table ec2 ip route add default via 1.0.0.1 table ec2 ip route add 10.8.0.0/24 dev tun0 table vpn ip route add default via 1.0.0.1 table vpn
-
Adicione regras de roteamento para selecionar a tabela de roteamento correta com base no endereço de origem
ip rule add from 1.0.0.20 lookup ec2 ip rule add from 10.8.0.20 lookup vpn
Isso deve permitir que você defina o gateway padrão para ser a VPN e ainda assim as conexões de entrada funcionem.
O que você poderia fazer em vez disso, é configurar seu aplicativo para vincular-se explicitamente ao IP da VPN (10.8.0.20) ao criar conexões de saída, o que fará com que todas as conexões desse aplicativo passem pela VPN, mas todas as outras conexões de saída sair diretamente. Se você não puder configurar seu aplicativo para vincular-se ao IP da VPN, poderá adicionar um servidor proxy HTTP para fazer essa parte.