iptables: redireciona conexões tcp para túnel ssh

iptables: redireciona conexões tcp para túnel ssh

Já vi isso ser usado em muitos projetos baseados em Android, como "ProxyDroid" e "SSHTunnel"

Onde você estabelece uma conexão com um proxy ou túnel ssh, usando iptables, ele redirecionará todas as solicitações tcp através do túnel que você criou.

Deveria ser algo como "-I OUTPUT -p tcp --destination-not xxx.xxx.xx.xx --redirect-to xx.xxx.xx.xx:port" mas não consegui encontrar nenhum exemplo sobre isso e Não sei se deve ser inserido no nat ou em outra coisa + não tenho ideia se devo ter mais de 1 regra por exemplo: mais uma para conexões de entrada.

EDITAR:

Parece que não é possível usar o túnel diretamente. Ou não descobri como fazer isso sem usar um agente, tive que instalar um programa chamado redsocks para atuar como um servidor local para fazer isso funcionar.

Quanto aos comandos iptables usados ​​​​aqui são:

# do not redirect connection sent to localhost so redirected connections can reach
# its destination, otherwise we'll stuck in a loop.
iptables -t nat -A OUTPUT -d 127.0.0.0/8 -j ACCEPT
# Redirect all tcp connections except ones that are going to my tunnel server 
# to the local redsocks port
iptables -t nat -A OUTPUT -p tcp ! -d tunnel.ip.goes.here -j REDIRECT --to-ports 31338

Repositório RedSocks:https://github.com/darkk/redsocks


Agora tudo funciona muito bem, mas ainda preciso saber se isso pode ser feito sem as redsocks (conectando-se diretamente ao túnel).

Responder1

Você pretende configurar uma VPN de pobre sobre SSH? Nesse caso, há alguma documentação do Ubuntu para isso:

https://help.ubuntu.com/community/SSH_VPN

Basicamente, você usaria a opção "-w" para configurar uma nova interface tun0 e iniciar o roteamento por meio dela. iptablesnão está envolvido, embora você precise configurar rotas.

Observe que fazer TCP sobre TCP pode ser uma tarefapéssima ideia. Uma opção melhor pode ser uma VPN simples, como o OpenVPN, mas será mais complicada do que um túnel ssh rápido e sujo.

informação relacionada