Certos casos de uso exigem que você proxy tráfego em programas que não suportam nativamente proxies. O blog anterior discutiu como isso é possível no Windows, mas também há muitos casos de uso para proxies no Linux ou até mesmo em contêineres Docker para maior flexibilidade.
Nesta postagem do blog, discutiremos como usar o proxies para contêineres do Docker usando o contêiner do Docker xjasonlyu/tun2socks.
O tun2socks é uma ferramenta de tunelamento de rede leve e portátil que permite rotear o tráfego por meio de um servidor proxy . Ele é escrito em Go e está disponível como um executável autônomo ou como um contêiner do Docker.
Neste guia, vou me concentrar em como usá-lo com o Docker, para que você possa conectar qualquer outro contêiner do Docker a ele e fazê-lo usar o proxies.
Primeiro, precisamos criar um contêiner inicial do Docker que fará o proxy.
docker run -d --name tun2socks \
-e EXTRA_COMMANDS='echo "nameserver 1.1.1.1" > /etc/resolv.conf;ip rule add iif lo ipproto udp dport 53 lookup main;' \
-e PROXY=http://<user>:<pass>@rp.proxyscrape.com:6060 \
-v '/dev/net/tun:/dev/net/tun' --cap-add=NET_ADMIN \
xjasonlyu/tun2socks
Neste exemplo, estou usando o Proxyscrape residencial proxies, mas você também pode usar o proxies premium ou qualquer outro proxies .
Agora que criamos o contêiner que faz o proxy, podemos usar qualquer contêiner que quisermos para usar a rede desse contêiner, bastando adicionar o sinalizador --network=container:tun2socks.
Para testar se tudo está funcionando corretamente, você pode usar um contêiner de teste que criei para retornar dados de localização do IPinfo.
docker run --rm --network=container:tun2socks hibenji/checkip
Como você pode ver, agora podemos proxy praticamente qualquer coisa por meio do proxies, mesmo quando não há suporte nativo.
É claro que você pode usar o proxies rotativo ao criar o contêiner inicial, mas também pode criar vários contêineres tun2socks, todos com sessões sticky , se isso também for necessário.
Essa abordagem de proxy no Docker abre um mundo de possibilidades. Agora você pode usar o proxies em conjunto com praticamente qualquer contêiner do Docker, mesmo aqueles sem suporte integrado ao proxy . Isso pode aprimorar os recursos dos seus aplicativos em contêineres, permitindo a execução de tarefas que poderiam ser difíceis ou impossíveis sem esse nível de controle de rede.
Obrigado pela leitura e espero que você tenha aprendido alguma coisa!
Este artigo foi escrito por Benji, um usuário de ProxyScrape .