У меня есть приложение командной строки в Linux, которое использует определенный порт для связи с удаленным сервером. К сожалению, на работе этот порт заблокирован.
Я могу подключить свой ноутбук через VNC к сети, и ноутбук подключен к Wi-Fi, который имеет порт доступа к удаленному серверу. Я могу подключиться к ноутбуку через защищенную сеть, когда он подключен.
Есть ли способ использовать туннелирование порта ssh, чтобы обойти это? Могу ли я портировать туннель на свой ноутбук и сделать так, чтобы мой ноутбук выступал посредником между сетью, защищенной брандмауэром, и удаленным сервером?
Firewalled Linux Box ---ssh---> Mac OSX Laptop ---wifi---> Remote Server
Некоторые особенности:
- Приложение командной строки - это оболочка для pip. В командной строке нет возможности указать прокси или альтернативный ip/ сервер для использования.
- Насколько я понимаю, Pip может взаимодействовать с несколькими различными серверами, но, скорее всего, с pypi.python.org.
- По словам источника, Пип связывается через порт 3128
Я пробовал следующее:
ssh -v -f -4 -N -L 3128:pypi.python.org:3128 andy@xx.x.xx.xxx
(Xx.x.xx.xxx заменяет IP-адрес ноутбука)
Когда он работает, он говорит:
Remote connections from LOCALHOST:3128 forwarded to local address pypi.python.org:3128
Это кажется мне задом наперед, но я новичок в этом, так что, кто знает! В любом случае, это не похоже на работу. К вашему сведению, в качестве теста я использую:
telnet pypi.python.org 3128
проверить, есть ли у брандмауэра машина сейчас, но нет.
Какие-нибудь мысли?