Tôi có thể truy cập một trang web tốt bằng cách truy cập trực tiếp vào máy chủ web của mình như sau:
$ echo "GET /sample" | nc web-server 80
This is contents of /sample...
$
Bây giờ, tôi muốn netcat đi qua proxy HTTP Squid (nghe trên cổng 3128), giống như tôi có thể định cấu hình trình duyệt Firefox của mình thông qua các tùy chọn proxy của nó và đưa nó qua proxy HTTP.
Tôi đã thử như sau, nhưng nó không hoạt động:
$ echo "GET /sample" | nc -x squid-proxy:3128 web-server 80
<Seemed to be blocked FOREVER on input, so I killed it.>
<Ctrl-C>
$
Lưu ý: Tôi đang sử dụng phiên bản RHEL 5.3 của netcat có các tùy chọn sau:
$ 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]]
Trích từ trang người đàn ông của 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
Bây giờ, vì tôi không phải là một usshase ssh / SSL, tôi không chắc cách sử dụng -x
/ -X
tùy chọn, hoặc thậm chí liệu tôi có nên sử dụng chúng hay không!
Nếu có nhiều hơn một cách để đạt được mục tiêu trên (cụ thể là định tuyến lưu lượng truy cập netcat qua proxy HTTP), thì tôi sẽ đánh giá rất cao nếu bạn có thể chia sẻ tất cả.
Rất cám ơn trước.