Linha de comando · 1 min de leitura

Proxychains: Como encadear proxies SOCKS5

proxychains-ng força qualquer programa de linha de comando através de um ou mais proxies, mesmo ferramentas que não têm opção de proxy própria. Este guia mostra como instalá-lo, configurar um proxy SOCKS5, encadear múltiplos saltos e evitar o erro clássico de vazamento de DNS.

O que o proxychains faz

proxychains-ng (o fork mantido do proxychains) é uma ferramenta que intercepta as chamadas de rede de um programa e as força a passar por um proxy — mesmo programas que não têm configuração de proxy. Você prefixa qualquer comando com proxychains4 e suas conexões TCP são roteadas através dos proxies na sua configuração. É um item básico no Kali e nos fluxos de trabalho de pentesting precisamente porque funciona com ferramentas que, de outra forma, se conectariam diretamente.

Ele suporta proxies HTTP, SOCKS4 e SOCKS5, e pode encadear vários deles para que seu tráfego passe por múltiplas etapas em sequência. Uma limitação importante a saber de antemão: o proxychains funciona ao interceptar chamadas de biblioteca, então afeta apenas programas vinculados dinamicamente — binários vinculados estaticamente e algumas ferramentas o contornam. E ele roteia TCP, não UDP ou ICMP brutos (então não pode fazer proxy de um normal ping).

Ajuda entender os três modos de encadeamento, porque eles se comportam de maneira muito diferente em caso de falha. No strict_chain, o tráfego deve passar por cada proxy listado na ordem exata dada, e se qualquer um estiver fora do ar, a conexão falha — isso é o que você quer quando a ordem e cada etapa importam. No dynamic_chain, o proxychains ignora quaisquer proxies inativos e usa o restante na ordem, o que é mais tolerante para listas instáveis. No random_chain, ele escolhe um subconjunto aleatório para cada conexão, útil para espalhar o tráfego, mas imprevisível. Qualquer que você escolha, lembre-se de que cada etapa extra multiplica a latência e adiciona outro operador que pode ver os metadados da sua conexão, então encadeie deliberadamente em vez de acumular proxies para uma vaga sensação de segurança extra.

Instale e configure-o

No Debian/Ubuntu/Kali; a configuração está em /etc/proxychains4.conf ou ~/.proxychains/proxychains.conf.

Instale o proxychains-ng

Instale o pacote (apt install proxychains4 em sistemas baseados em Debian, ou construa proxychains-ng a partir do código-fonte para a versão mais recente).

Edite a configuração

Abra o arquivo de configuração. Escolha um modo de cadeia (strict_chain, dynamic_chain ou random_chain) e, criticamente, ative proxy_dns para rotear DNS através da cadeia.

Adicione seu proxy na parte inferior

Na seção [ProxyList], adicione sua linha SOCKS5: tipo, host, porta e, para proxies autenticados, nome de usuário e senha. s4m SOCKS5 está na porta 1080.

Execute um comando através dele

Prefixe qualquer comando com proxychains4, por exemplo proxychains4 curl https://api.ipify.org, e confirme que o IP de saída é o do proxy, não o seu.

Exemplo de proxychains4.conf

Ative proxy_dns para evitar vazamentos de consultas, escolha um modo de cadeia e liste seus proxies. No strict_chain, o tráfego passa por cada proxy em ordem.

ini
# /etc/proxychains4.conf

# Route all connections through the proxies in ORDER, all must be up:
strict_chain
# (alternatives: dynamic_chain = skip dead ones; random_chain = random subset)

# CRITICAL: resolve DNS through the chain, not your local resolver:
proxy_dns

[ProxyList]
# type   host                 port  user  pass
socks5   proxy.s4m.online     1080  USER  PASS
# Chain a second hop by adding another line below (strict_chain):
# socks5 another.proxy.host   1080  USER2 PASS2

# Usage:
#   proxychains4 curl https://api.ipify.org
#   proxychains4 nmap -sT -Pn target      (TCP connect scan only)
Share this page
FAQ

Perguntas, respondidas

Como posso impedir que o proxychains vaze DNS?

Ative a opção proxy_dns em proxychains4.conf. Sem isso, suas consultas DNS vão para o seu resolvedor local e revelam os domínios que você está visitando, mesmo que as conexões sejam proxyadas. Com isso, as consultas são resolvidas através da cadeia de proxy.

Proxychains pode rotear ping ou tráfego UDP?

Não. proxychains funciona no nível de conexão TCP ao interceptar chamadas de biblioteca, portanto, não pode proxyar ICMP bruto (ping) ou UDP arbitrário. Também afeta apenas programas vinculados dinamicamente. Use uma VPN completa se precisar rotear tráfego não-TCP de forma transparente.

Posso encadear múltiplos proxies com proxychains?

Sim. Adicione várias linhas à seção [ProxyList]. No modo strict_chain, seu tráfego passa por todos eles em ordem; dynamic_chain ignora qualquer um que esteja fora do ar; random_chain usa um subconjunto aleatório. Cada salto extra adiciona latência, então encadeie apenas o que você precisa.

Obtenha um endpoint SOCKS5 para encadear

s4m fornece proxies SOCKS5 autenticados na porta 1080, prontos para serem usados no proxychains. Pagamento medido conforme o uso, uma lista de proxies gratuita para testes, contas anônimas e pagamentos em cripto.

As pessoas encontraram esta página pesquisando por

Frases de busca reais que esta página responde — os links abrem a página que as cobre em profundidade.