Saya dapat mengakses halaman web dengan baik dengan langsung menekan server web saya sebagai berikut:
$ echo "GET /sample" | nc web-server 80
This is contents of /sample...
$
Sekarang, saya ingin netcat untuk pergi melalui proxy HTTP Squid (mendengarkan pada port 3128), seperti saya dapat mengkonfigurasi browser Firefox saya melalui preferensi proxy dan memilikinya melalui proxy HTTP.
Saya mencoba yang berikut, tetapi tidak berhasil:
$ echo "GET /sample" | nc -x squid-proxy:3128 web-server 80
<Seemed to be blocked FOREVER on input, so I killed it.>
<Ctrl-C>
$
Catatan: Saya menggunakan versi netcat RHEL 5.3 yang memiliki opsi berikut:
$ 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]]
Kutipan dari halaman manual 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
Sekarang, karena milik saya bukan usecase ssh / SSL, saya tidak yakin bagaimana menggunakan opsi -x
/ -X
, atau bahkan apakah saya harus menggunakannya sama sekali!
Jika ada lebih dari satu cara untuk mencapai tujuan di atas (yaitu, merutekan lalu lintas netcat melalui proxy HTTP), maka saya akan sangat menghargai jika Anda dapat membagikan semuanya.
Banyak terima kasih sebelumnya.
0.1
untuk menutupi ketidaktahuan saya.:)
nc
dan Firefox sedikit memperjelas hal-hal?nc squid-proxy 3128
diikutiGET http://webserver/sample HTTP/1.0
, tetapi mendapat HTTP / 1.0 403 Forbidden (Akses ditolak kesalahan).:)
Anda mungkin dapat menggunakantcpdump
atauwireshark
mengetukCONNECT
koneksi Anda sendiri dan mendapatkan wawasan ...Lihatlah socat: http://www.dest-unreach.org/socat/doc/README
sumber
echo "GET /sample HTTP/1.0" | socat PROXY:squid-proxy:web-server:80,proxyport=3128 STDIN
, tapi punya kesalahan ini:2012/05/17 06:56:23 socat[3135] E CONNECT web-server:80: Forbidden
. Sekarang, hanya untuk melihat apakah saya memahami alat ini dengan benar, saya selanjutnya mencoba penggunaan dasar, non-proxy:,echo "GET /sample HTTP/1.0" | socat TCP4:web-server:80 STDIN
tetapi tidak mendapat tanggapan kembali! Jadi, jelas, saya kehilangan sesuatu di sini dalam penggunaan socat. Akan menghargai jika Anda bisa menunjukkan kesalahan saya.STDIO
(atau,-
)STDIN
. Tetapi versi proksi masih memberi saya kesalahan yang sama.echo "GET http://web-server/sample" | socat - TCP:squid-proxy:3128
dan berhasil. Apakah Anda mengonfirmasi jika ini adalah cara saya seharusnya menggunakansocat
(bukanPROXY:...
spesifikasi alamat)?