Posso acessar uma página da Web muito bem, acessando diretamente meu servidor da Web da seguinte maneira:
$ echo "GET /sample" | nc web-server 80
This is contents of /sample...
$
Agora, eu gostaria que o netcat fosse por um proxy HTTP do Squid (escutando na porta 3128), assim como eu posso configurar meu navegador Firefox por meio de suas preferências de proxy e fazê-lo por um proxy HTTP.
Eu tentei o seguinte, mas não funcionou:
$ echo "GET /sample" | nc -x squid-proxy:3128 web-server 80
<Seemed to be blocked FOREVER on input, so I killed it.>
<Ctrl-C>
$
Nota: Estou usando a versão RHEL 5.3 do netcat que possui as seguintes opções:
$ nc --help
nc: invalid option -- -
usage: nc [-46DdhklnrStUuvzC] [-i interval] [-p source_port]
[-s source_ip_address] [-T ToS] [-w timeout] [-X proxy_version]
[-x proxy_address[:port]] [hostname] [port[s]]
Trecho da página de manual de nc
:
EXAMPLES
<snip>
Connect to port 42 of host.example.com via an HTTP proxy at 10.2.3.4, port 8080.
This example could also be used by ssh(1); see the ProxyCommand directive in
ssh_config(5) for more information.
$ nc -x10.2.3.4:8080 -Xconnect host.example.com 42
Agora, como o meu não é um caso de usuário ssh / SSL, não sei como usar as opções -x
/ -X
, ou mesmo se devo usá-las!
Se houver mais de uma maneira de atingir o objetivo acima (ou seja, rotear o tráfego netcat por meio de um proxy HTTP), agradeceria muito se você pudesse compartilhar todos eles.
Muito obrigado antecipadamente.