Проблема с прокси-сервером netcat в Linux

Я пытаюсь следовать ряду рецептов, которые используют netcat или, в идеале, knc (kerberos netcat) для создания прокси; либо посмотреть, что передается через прокси-сервер для отладки, либо создать ссылку с проверкой подлинности kerberos, по которой я могу туннелировать некоторый трафик tcp между серверами на основе Java.

Взяв этот пример, http://notes.tweakblogs.net/blog/7955/using-netcat-to-build-a-simple-tcp-proxy-in-linux.html шаблон выглядит примерно так:

mkfifo fifo
nc -l -p 8080 <fifo | nc tweakers.net 80 >fifo

Тем не менее, это дает ошибку:

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]]

Тем не менее, если я запускаю только эфирную сторону канала, я не получаю ошибок:

nc -l -p 8080 <fifo
nc tweakers.net 80 >fifo

Чего мне не хватает, чтобы заставить это работать?

Я использую Red Hat Enterprise Linux Server версии 6.2 (Сантьяго) либо bash, либо ksh.


person simbo1905    schedule 18.07.2013    source источник


Ответы (1)


Досадно, что это была опция -p, которая сбивала с толку. Следующая команда работает нормально:

nc -l 8080 <fifo | nc somehost.com 80 >fifo

Затем в другой оболочке делаем

telnet localhost 8080
get /

работает отлично.

person simbo1905    schedule 18.07.2013