Eu tenho acesso a uma VPN e quero usá-la apenas para alguns aplicativos, não todos.
Por exemplo:
Se eu conectar a uma VPN, quero que apenas os aplicativos Opera e Newsbin usem essa conexão VPN. Todos os outros aplicativos, como o Outlook, devem usar a conexão normal à Internet (enquanto a VPN estiver conectada / aberta).
Afaik, isso não é possível, mas não tenho certeza. Então, portanto, minha pergunta: é factível?
networking
internet
vpn
privacy
dirkt
fonte
fonte
Respostas:
Não, não é. Bem, não usando meios normais. Roteamento é roteamento. O roteamento opera abaixo do modelo OSI. O que você precisa acontecer é que ele esteja ciente no nível do aplicativo (acima), para que possa detectar qual programa você está usando etc. Os roteadores NORMAL não permitem configurar rotas com base em aplicativos ou números de porta.
Eu acho que é possível. Os roteadores podem ver as portas para que você possa filtrá-las pelo número da porta e enviar o tráfego para diferentes rotas. Tenho certeza de que li algo há um tempo atrás com roteadores Cisco que podem fazer isso. Eles não são baratos e são roteadores de negócios que exigem muita configuração e acho que você quer algo simples para uso doméstico.
Em resumo, é o roteador que precisaria desse recurso e seu padrão básico para uso doméstico, mesmo as empresas não suportam esses recursos. Somente a linha avançada da Cisco e da Sonicwalls oferece esses recursos.
fonte
É possível fazer isso, pelo menos no Linux (e também estou pensando em BSD e OS X). Você pode fazer isso:
Existem scripts para realizar as etapas acima aqui ou há outro guia aqui .
Aqui está um guia detalhado para rotear a transmissão por uma VPN (usando um servidor VPN que você possui.
fonte
Você pode usar o Firewall do Windows para fazer isso (desde que esteja usando o Windows 7 ou Vista) - escrevi um guia sobre isso
fonte
Você pode fazer isso com namespaces de rede no GNU / Linux.
Veja como executar o OpenVPN e um único aplicativo em um espaço para nome separado:
Crie o namespace da rede líquida:
Inicie a interface de loopback no espaço para nome (caso contrário, muitas coisas não funcionam como o esperado ...)
Crie interfaces de rede virtual que permitirão que o OpenVPN (no espaço de nomes) acesse a rede real e configure a interface no espaço de nomes (vpn1) para usar a interface fora do espaço de nomes (vpn0) como gateway padrão
Habilite o roteamento IPv4 e o NAT para a interface no espaço para nome. Como minha interface padrão é sem fio, uso wl + (que pode corresponder a wlan0, wlp3s0 etc.) em iptables para a interface de saída; se você usa uma interface com fio, provavelmente deve usar en + (ou br + para uma interface com ponte)
Configure o servidor de nomes para usar dentro do espaço para nome
Quase pronto, agora devemos ter acesso total à rede no espaço para nome
Por fim, inicie o OpenVPN no espaço para nome
Quando tun0 estiver no namespace, você estará pronto para iniciar o programa que queria!
Artigo SOURCE.
Também há um script de wrapper no artigo de origem que você pode adaptar às suas necessidades.
fonte
Eu fiz isso no Windows. A idéia é vincular os pacotes de rede de saída à interface da VPN. As pessoas sugerem o ForceBindIP por isso, mas graças a esta resposta , tenho uma idéia para usar o proxy. A desvantagem desse método é que seus aplicativos precisam ter suporte a proxy ou você precisará usar um proxy (veja aqui e aqui ). A vantagem é que dessa maneira você poderá limitar o uso da VPN no navegador a domínios específicos usando FoxyProxy ou complementos similares.
Uso o 3proxy no modo SOCKS e vinculo sua interface externa ao IP da VPN. O OpenVPN é usado para a conexão VPN.
No meu arquivo .ovpn (
client
,dev tun
) adicionei estas linhas:route-nopull
para ignorar as rotas enviadas pelo servidor. No seu caso, pode ser necessário comentar o redirecionamento de gateway.route
para adicionar uma rota para essa interface, sem essa linha, ela não será usada mesmo que o aplicativo esteja associado a ela.pull-filter
preservar o DNS empurrado que, caso contrário, será eliminadoroute-nopull
junto com as rotas empurradas. Esta opção é suportada a partir do OpenVPN 2.4. Se você precisar usar o OpenVPN 2.3 (versão mais recente do Windows XP), precisará adicionar duasdhcp-option DNS x.x.x.x
linhas com IPs codificados.script-security 2
para permitir scripts.up
roteiro:down
roteiro:Portanto, depois que você se conectar à VPN usando essa configuração, o
3proxy.exe
processo será iniciado e um proxy SOCKS5 limitado por host local com capacidade de resolução de DNS será executado na1080
porta, agora basta configurar seu aplicativo para usar olocalhost:1080
proxy SOCKS.fonte
Options error: option 'route' cannot be used in this context ([PUSH-OPTIONS])
eOptions error: option 'redirect-gateway' cannot be used in this context ([PUSH-OPTIONS])
. No entanto, esta solução funciona. Se você ignorar os apóstrofos para baixo e para cima script, use barras invertidas duplas:c:\\path\\to\\script
Se você está no linux e usa o openVPN , o VPNShift funciona perfeitamente.
fonte
Basta acessar a VPN através de uma máquina virtual.
Use os aplicativos 'selecionados' da VM em vez de usá-los na máquina host.
PS: Você precisa conceder acesso de rede à VM através da máquina host, é claro.
fonte
Sei que esta é uma resposta muito tardia que acabei de encontrar, mas, caso seja relevante para alguém, tive a mesma circunstância em que queria executar meu tráfego de trabalho através da VPN, mas não queria que meu tráfego pessoal fosse roteado pelos seus servidores proxy e tal. Então, eu estava executando o Win7 naquela época, mas eles ainda estavam executando o WinXP em muitos de seus sistemas. Eventualmente, eles me deram um segundo PC para executar o trabalho, que resolveu o problema (uma caixa de interruptores conectada aos dois PCs, poderia apenas ir e voltar), mas antes disso eu executei um Virtual XP que eu configurei como meu sistema operacional. Gostaria de entrar na VPN a partir da referida VM para conectar-me ao trabalho, o que deixaria o tráfego pessoal do SO livre das restrições de trabalho e espionagem.
fonte