![Roteando uma conexão VPN para um proxy meias no mesmo servidor](https://rvso.com/image/1567462/Roteando%20uma%20conex%C3%A3o%20VPN%20para%20um%20proxy%20meias%20no%20mesmo%20servidor.png)
Estou executando um VPS com o serviço OpenVPN. No mesmo servidor também configurei um proxy de meias local (é o Tor, mas não acho que isso realmente importe neste caso).
Posso, de alguma forma, rotear minha conexão VPN para esse proxy de meias, sem nenhuma alteração nas configurações locais do navegador/dispositivo?
A conexão que desejo configurar se parece com
(my device) -> VPN tunnel -> (VPN server -> Tor SOCKS proxy) -> Tor network
(this connection is inside VPS)
vejo duas opções
1) O roteamento acontece inteiramente no servidor, de forma transparente para um cliente
2) A VPN envia opções de proxy de meias (já que pode enviar rotas, servidores DNS, etc.)
mas não tenho ideia de como conseguir nenhum deles.
Eu uso frequentemente o OpenVPN para contornar o bloqueio e quero usar a mesma rotina para me conectar à rede Tor de dispositivos Windows e Android, sem me preocupar em alterar as configurações de proxy, executar tor/orbot local etc. uma conexão VPN normal que roteia todo o tráfego para a Internet (já está configurada e funcionando bem), mas em uma porta diferente.
Responder1
Finalmente consegui.
Primeiro você precisa executar outra instância do OpenVPN. Basta copiar seu openvpn/server.conf e alterar
port [some free port]
server [another subnet, if your first instance was on 10.8.0.0, set it to 10.8.1.0] 255.255.255.0
push "dhcp-option DNS [we will use TOR DNS, so this will be TOR proxy IP, e.g. 10.8.1.1]"
você pode querer gerar outro par de chaves.
Então você inicia o TOR no modo proxy transparente (observe que a documentação oficial lista este modo como potencialmente inseguro, consultehttps://trac.torproject.org/projects/tor/wiki/doc/TransparentProxypara detalhes). Ele servirá como seu gateway e servidor DNS. Altere torrc
o arquivo padrão anexando esta configuração
VirtualAddrNetworkIPv4 10.192.0.0/10
AutomapHostsOnResolve 1
TransPort [address in your subnet, e.g. 10.8.1.1]:9040
DNSPort [same, 10.8.1.1]:53
e finalmente encaminhar todas as solicitações de sub-rede para o proxy TOR (configuração especial para tráfego DNS)
iptables -t nat -A PREROUTING -s [your subnet, e.g. 10.8.1.0/24] -p udp -m udp --dport 53 -j REDIRECT --to-ports 53
iptables -t nat -A PREROUTING -s [your subnet, e.g. 10.8.1.0/24] -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j REDIRECT --to-ports 9040
certifique-se de permitir o tráfego interno da sub-rede 10.8.1.0 em seu firewall.
A conexão a portas diferentes permitirá que você mude da rede TOR para uma conexão normal à Internet por meio de VPN. Nenhuma configuração de cliente é necessária.